From 8d4f315122c06dd67d46da56bee5dcae5227043f Mon Sep 17 00:00:00 2001 From: "Ian M. Jones" Date: Thu, 12 Dec 2024 12:31:58 +0000 Subject: [PATCH] Deploying version 3.2.10 --- README.md | 11 +- classes/amazon-s3-and-cloudfront.php | 18 +- classes/as3cf-plugin-updater.php | 44 +- .../storage/digitalocean-provider.php | 2 + classes/providers/storage/gcp-provider.php | 62 +- languages/amazon-s3-and-cloudfront-en.pot | 416 +- readme.txt | 10 +- vendor/Gcp/autoload.php | 2 +- vendor/Gcp/bin/google-cloud-batch | 5 +- vendor/Gcp/composer/ClassLoader.php | 96 +- vendor/Gcp/composer/InstalledVersions.php | 16 +- vendor/Gcp/composer/autoload_classmap.php | 2 +- vendor/Gcp/composer/autoload_psr4.php | 2 +- vendor/Gcp/composer/autoload_real.php | 10 +- vendor/Gcp/composer/autoload_static.php | 14 +- vendor/Gcp/composer/installed.json | 574 ++- vendor/Gcp/composer/installed.php | 2 +- vendor/Gcp/firebase/php-jwt/CHANGELOG.md | 14 + .../php-jwt/src/BeforeValidException.php | 11 +- .../firebase/php-jwt/src/ExpiredException.php | 11 +- vendor/Gcp/firebase/php-jwt/src/JWT.php | 21 +- .../src/JWTExceptionWithPayloadInterface.php | 20 + vendor/Gcp/google/auth/README.md | 53 +- vendor/Gcp/google/auth/VERSION | 1 + vendor/Gcp/google/auth/composer.json | 6 +- vendor/Gcp/google/auth/src/AccessToken.php | 82 +- .../src/ApplicationDefaultCredentials.php | 9 +- .../src/CredentialSource/AwsNativeSource.php | 270 + .../auth/src/CredentialSource/FileSource.php | 60 + .../auth/src/CredentialSource/UrlSource.php | 74 + .../ExternalAccountCredentials.php | 229 + .../auth/src/Credentials/GCECredentials.php | 81 +- .../ImpersonatedServiceAccountCredentials.php | 18 +- .../Credentials/ServiceAccountCredentials.php | 27 + .../ServiceAccountJwtAccessCredentials.php | 2 +- .../Gcp/google/auth/src/CredentialsLoader.php | 53 +- ...ternalAccountCredentialSourceInterface.php | 23 + .../google/auth/src/FetchAuthTokenCache.php | 47 +- .../auth/src/GetUniverseDomainInterface.php | 34 + vendor/Gcp/google/auth/src/Iam.php | 11 +- vendor/Gcp/google/auth/src/IamSignerTrait.php | 5 +- .../src/Middleware/AuthTokenMiddleware.php | 36 +- vendor/Gcp/google/auth/src/OAuth2.php | 108 +- .../auth/src/ServiceAccountSignerTrait.php | 11 +- .../google/auth/src/UpdateMetadataTrait.php | 62 + vendor/Gcp/google/cloud-core/VERSION | 2 +- vendor/Gcp/google/cloud-core/composer.json | 17 +- .../google/cloud-core/src/ApiHelperTrait.php | 227 + .../cloud-core/src/Batch/BatchTrait.php | 2 +- .../src/Batch/HandleFailureTrait.php | 2 +- .../src/Batch/InMemoryConfigStorage.php | 5 +- .../cloud-core/src/Batch/InterruptTrait.php | 3 +- .../src/Batch/QueueOverflowException.php | 2 +- .../Gcp/google/cloud-core/src/Batch/Retry.php | 5 + .../src/Batch/SerializableClientTrait.php | 2 +- .../cloud-core/src/Batch/SimpleJobTrait.php | 2 +- .../cloud-core/src/DetectProjectIdTrait.php | 82 + .../cloud-core/src/ExponentialBackoff.php | 2 +- .../cloud-core/src/GrpcRequestWrapper.php | 104 +- .../Gcp/google/cloud-core/src/GrpcTrait.php | 23 +- vendor/Gcp/google/cloud-core/src/Iam/Iam.php | 14 +- .../google/cloud-core/src/Iam/IamManager.php | 193 + .../src/InsecureCredentialsWrapper.php | 3 + .../cloud-core/src/LongRunning/LROTrait.php | 3 + .../LongRunningConnectionInterface.php | 1 + .../src/LongRunning/LongRunningOperation.php | 3 + .../src/Report/EmptyMetadataProvider.php | 3 +- .../src/Report/GAEMetadataProvider.php | 3 +- .../src/Report/MetadataProviderInterface.php | 3 +- .../src/Report/SimpleMetadataProvider.php | 3 +- .../google/cloud-core/src/RequestHandler.php | 114 + .../cloud-core/src/RequestProcessorTrait.php | 130 + .../google/cloud-core/src/RequestWrapper.php | 80 +- .../Gcp/google/cloud-core/src/RestTrait.php | 29 +- vendor/Gcp/google/cloud-core/src/Retry.php | 2 +- .../google/cloud-core/src/ServiceBuilder.php | 32 +- .../src/Upload/ResumableUploader.php | 6 +- vendor/Gcp/google/cloud-storage/README.md | 8 +- vendor/Gcp/google/cloud-storage/VERSION | 2 +- vendor/Gcp/google/cloud-storage/composer.json | 6 +- vendor/Gcp/google/cloud-storage/src/Acl.php | 27 +- .../Gcp/google/cloud-storage/src/Bucket.php | 54 +- .../src/Connection/ConnectionInterface.php | 2 + .../src/Connection/IamBucket.php | 2 + .../cloud-storage/src/Connection/Rest.php | 38 +- .../ServiceDefinition/storage-v1.json | 1452 +++++- .../Gcp/google/cloud-storage/src/HmacKey.php | 5 +- .../google/cloud-storage/src/Lifecycle.php | 4 +- .../google/cloud-storage/src/Notification.php | 6 +- .../cloud-storage/src/ObjectIterator.php | 4 +- .../cloud-storage/src/ObjectPageIterator.php | 4 +- .../cloud-storage/src/SigningHelper.php | 21 +- .../cloud-storage/src/StorageClient.php | 20 +- .../cloud-storage/src/StorageObject.php | 36 +- vendor/Gcp/google/common-protos/CHANGELOG.md | 87 + .../google/common-protos/CODE_OF_CONDUCT.md | 43 + .../Gcp/google/common-protos/CONTRIBUTING.md | 45 + .../google/{crc32 => common-protos}/LICENSE | 0 vendor/Gcp/google/common-protos/README.md | 46 + vendor/Gcp/google/common-protos/SECURITY.md | 7 + vendor/Gcp/google/common-protos/composer.json | 32 + .../metadata/Api/Annotations.php | 24 + .../common-protos/metadata/Api/Auth.php | Bin 0 -> 1361 bytes .../common-protos/metadata/Api/Backend.php | Bin 0 -> 1349 bytes .../common-protos/metadata/Api/Billing.php | 28 + .../common-protos/metadata/Api/Client.php | Bin 0 -> 3668 bytes .../metadata/Api/ConfigChange.php | Bin 0 -> 1018 bytes .../common-protos/metadata/Api/Consumer.php | Bin 0 -> 967 bytes .../common-protos/metadata/Api/Context.php | 31 + .../common-protos/metadata/Api/Control.php | 27 + .../metadata/Api/Distribution.php | Bin 0 -> 1831 bytes .../metadata/Api/Documentation.php | 38 + .../common-protos/metadata/Api/Endpoint.php | 29 + .../metadata/Api/ErrorReason.php | Bin 0 -> 1628 bytes .../metadata/Api/FieldBehavior.php | Bin 0 -> 973 bytes .../common-protos/metadata/Api/FieldInfo.php | Bin 0 -> 915 bytes .../common-protos/metadata/Api/Http.php | Bin 0 -> 1115 bytes .../common-protos/metadata/Api/Httpbody.php | 29 + .../common-protos/metadata/Api/Label.php | Bin 0 -> 870 bytes .../metadata/Api/LaunchStage.php | Bin 0 -> 869 bytes .../google/common-protos/metadata/Api/Log.php | 29 + .../common-protos/metadata/Api/Logging.php | 29 + .../common-protos/metadata/Api/Metric.php | Bin 0 -> 1977 bytes .../metadata/Api/MonitoredResource.php | 45 + .../common-protos/metadata/Api/Monitoring.php | 30 + .../common-protos/metadata/Api/Policy.php | 30 + .../common-protos/metadata/Api/Quota.php | 50 + .../common-protos/metadata/Api/Resource.php | Bin 0 -> 1193 bytes .../common-protos/metadata/Api/Routing.php | 28 + .../common-protos/metadata/Api/Service.php | 75 + .../common-protos/metadata/Api/SourceInfo.php | 27 + .../metadata/Api/SystemParameter.php | 33 + .../common-protos/metadata/Api/Usage.php | 32 + .../common-protos/metadata/Api/Visibility.php | 29 + .../metadata/Cloud/ExtendedOperations.php | Bin 0 -> 920 bytes .../metadata/Cloud/Location/Locations.php | 48 + .../metadata/Iam/V1/IamPolicy.php | 48 + .../metadata/Iam/V1/Logging/AuditData.php | 25 + .../common-protos/metadata/Iam/V1/Options.php | 24 + .../common-protos/metadata/Iam/V1/Policy.php | Bin 0 -> 1852 bytes .../metadata/Logging/Type/HttpRequest.php | 41 + .../metadata/Logging/Type/LogSeverity.php | Bin 0 -> 1006 bytes .../common-protos/metadata/Rpc/Code.php | Bin 0 -> 1015 bytes .../metadata/Rpc/Context/AttributeContext.php | 104 + .../metadata/Rpc/Context/AuditContext.php | 29 + .../metadata/Rpc/ErrorDetails.php | 72 + .../common-protos/metadata/Rpc/Status.php | 28 + .../metadata/Type/CalendarPeriod.php | Bin 0 -> 898 bytes .../common-protos/metadata/Type/Color.php | 29 + .../common-protos/metadata/Type/Date.php | 26 + .../common-protos/metadata/Type/Datetime.php | Bin 0 -> 1099 bytes .../common-protos/metadata/Type/Dayofweek.php | Bin 0 -> 872 bytes .../common-protos/metadata/Type/Decimal.php | 24 + .../common-protos/metadata/Type/Expr.php | 28 + .../common-protos/metadata/Type/Fraction.php | 25 + .../common-protos/metadata/Type/Interval.php | 27 + .../common-protos/metadata/Type/Latlng.php | 25 + .../metadata/Type/LocalizedText.php | 25 + .../common-protos/metadata/Type/Money.php | 27 + .../common-protos/metadata/Type/Month.php | Bin 0 -> 892 bytes .../metadata/Type/PhoneNumber.php | Bin 0 -> 930 bytes .../metadata/Type/PostalAddress.php | 36 + .../metadata/Type/Quaternion.php | 28 + .../common-protos/metadata/Type/Timeofday.php | 27 + vendor/Gcp/google/common-protos/owlbot.py | 80 + vendor/Gcp/google/common-protos/renovate.json | 7 + .../google/common-protos/src/Api/Advice.php | 66 + .../common-protos/src/Api/AuthProvider.php | 398 ++ .../common-protos/src/Api/AuthRequirement.php | 150 + .../common-protos/src/Api/Authentication.php | 111 + .../src/Api/AuthenticationRule.php | 180 + .../google/common-protos/src/Api/Backend.php | 65 + .../common-protos/src/Api/BackendRule.php | 489 ++ .../src/Api/BackendRule/PathTranslation.php | 80 + .../google/common-protos/src/Api/Billing.php | 101 + .../src/Api/Billing/BillingDestination.php | 109 + .../common-protos/src/Api/ChangeType.php | 59 + .../src/Api/ClientLibraryDestination.php | 51 + .../src/Api/ClientLibraryOrganization.php | 80 + .../src/Api/ClientLibrarySettings.php | 447 ++ .../src/Api/CommonLanguageSettings.php | 101 + .../common-protos/src/Api/ConfigChange.php | 233 + .../google/common-protos/src/Api/Context.php | 92 + .../common-protos/src/Api/ContextRule.php | 202 + .../google/common-protos/src/Api/Control.php | 103 + .../common-protos/src/Api/CppSettings.php | 69 + .../src/Api/CustomHttpPattern.php | 92 + .../common-protos/src/Api/Distribution.php | 362 ++ .../src/Api/Distribution/BucketOptions.php | 138 + .../Distribution/BucketOptions/Explicit.php | 68 + .../BucketOptions/Exponential.php | 129 + .../Api/Distribution/BucketOptions/Linear.php | 129 + .../src/Api/Distribution/Exemplar.php | 163 + .../src/Api/Distribution/Range.php | 92 + .../common-protos/src/Api/Documentation.php | 341 ++ .../src/Api/DocumentationRule.php | 159 + .../common-protos/src/Api/DotnetSettings.php | 284 ++ .../google/common-protos/src/Api/Endpoint.php | 229 + .../common-protos/src/Api/ErrorReason.php | 594 +++ .../common-protos/src/Api/FieldBehavior.php | 115 + .../common-protos/src/Api/FieldInfo.php | 69 + .../src/Api/FieldInfo/Format.php | 75 + .../common-protos/src/Api/FieldPolicy.php | 169 + .../common-protos/src/Api/GoSettings.php | 69 + .../Gcp/google/common-protos/src/Api/Http.php | 114 + .../google/common-protos/src/Api/HttpBody.php | 156 + .../google/common-protos/src/Api/HttpRule.php | 620 +++ .../common-protos/src/Api/JavaSettings.php | 207 + .../common-protos/src/Api/JwtLocation.php | 180 + .../common-protos/src/Api/LabelDescriptor.php | 123 + .../src/Api/LabelDescriptor/ValueType.php | 49 + .../common-protos/src/Api/LaunchStage.php | 101 + .../common-protos/src/Api/LogDescriptor.php | 188 + .../google/common-protos/src/Api/Logging.php | 142 + .../src/Api/Logging/LoggingDestination.php | 113 + .../common-protos/src/Api/MethodPolicy.php | 112 + .../common-protos/src/Api/MethodSettings.php | 223 + .../src/Api/MethodSettings/LongRunning.php | 202 + .../google/common-protos/src/Api/Metric.php | 105 + .../src/Api/MetricDescriptor.php | 793 +++ .../MetricDescriptorMetadata.php | 172 + .../src/Api/MetricDescriptor/MetricKind.php | 61 + .../src/Api/MetricDescriptor/ValueType.php | 75 + .../common-protos/src/Api/MetricRule.php | 117 + .../src/Api/MonitoredResource.php | 138 + .../src/Api/MonitoredResourceDescriptor.php | 288 ++ .../src/Api/MonitoredResourceMetadata.php | 137 + .../common-protos/src/Api/Monitoring.php | 181 + .../Api/Monitoring/MonitoringDestination.php | 109 + .../common-protos/src/Api/NodeSettings.php | 69 + .../src/Api/OAuthRequirements.php | 90 + .../Gcp/google/common-protos/src/Api/Page.php | 188 + .../common-protos/src/Api/PhpSettings.php | 69 + .../src/Api/ProjectProperties.php | 74 + .../google/common-protos/src/Api/Property.php | 130 + .../src/Api/Property/PropertyType.php | 61 + .../common-protos/src/Api/Publishing.php | 382 ++ .../common-protos/src/Api/PythonSettings.php | 69 + .../google/common-protos/src/Api/Quota.php | 135 + .../common-protos/src/Api/QuotaLimit.php | 494 ++ .../src/Api/ResourceDescriptor.php | 455 ++ .../src/Api/ResourceDescriptor/History.php | 53 + .../src/Api/ResourceDescriptor/Style.php | 48 + .../src/Api/ResourceReference.php | 181 + .../src/Api/RoutingParameter.php | 272 ++ .../common-protos/src/Api/RoutingRule.php | 347 ++ .../common-protos/src/Api/RubySettings.php | 69 + .../google/common-protos/src/Api/Service.php | 1132 +++++ .../common-protos/src/Api/SourceInfo.php | 61 + .../common-protos/src/Api/SystemParameter.php | 133 + .../src/Api/SystemParameterRule.php | 121 + .../src/Api/SystemParameters.php | 149 + .../google/common-protos/src/Api/Usage.php | 179 + .../common-protos/src/Api/UsageRule.php | 168 + .../common-protos/src/Api/Visibility.php | 82 + .../common-protos/src/Api/VisibilityRule.php | 141 + .../src/Cloud/Iam/V1/AuditConfig.php | 146 + .../src/Cloud/Iam/V1/AuditConfigDelta.php | 187 + .../Cloud/Iam/V1/AuditConfigDelta/Action.php | 49 + .../src/Cloud/Iam/V1/AuditLogConfig.php | 120 + .../Cloud/Iam/V1/AuditLogConfig/LogType.php | 56 + .../src/Cloud/Iam/V1/Binding.php | 287 ++ .../src/Cloud/Iam/V1/BindingDelta.php | 183 + .../src/Cloud/Iam/V1/BindingDelta/Action.php | 49 + .../src/Cloud/Iam/V1/GetIamPolicyRequest.php | 108 + .../src/Cloud/Iam/V1/GetPolicyOptions.php | 113 + .../common-protos/src/Cloud/Iam/V1/Policy.php | 362 ++ .../src/Cloud/Iam/V1/PolicyDelta.php | 92 + .../src/Cloud/Iam/V1/SetIamPolicyRequest.php | 167 + .../Iam/V1/TestIamPermissionsRequest.php | 108 + .../Iam/V1/TestIamPermissionsResponse.php | 65 + .../src/Cloud/Location/GetLocationRequest.php | 61 + .../Cloud/Location/ListLocationsRequest.php | 154 + .../Cloud/Location/ListLocationsResponse.php | 92 + .../src/Cloud/Location/Location.php | 209 + .../src/Cloud/Logging/Type/HttpRequest.php | 577 +++ .../src/Cloud/Logging/Type/LogSeverity.php | 101 + .../src/Cloud/OperationResponseMapping.php | 72 + .../src/Iam/V1/Logging/AuditData.php | 71 + .../common-protos/src/Rpc/BadRequest.php | 62 + .../src/Rpc/BadRequest/FieldViolation.php | 204 + .../Gcp/google/common-protos/src/Rpc/Code.php | 217 + .../src/Rpc/Context/AttributeContext.php | 378 ++ .../src/Rpc/Context/AttributeContext/Api.php | 180 + .../src/Rpc/Context/AttributeContext/Auth.php | 335 ++ .../src/Rpc/Context/AttributeContext/Peer.php | 204 + .../Rpc/Context/AttributeContext/Request.php | 464 ++ .../Rpc/Context/AttributeContext/Resource.php | 564 +++ .../Rpc/Context/AttributeContext/Response.php | 226 + .../src/Rpc/Context/AuditContext.php | 225 + .../common-protos/src/Rpc/DebugInfo.php | 92 + .../common-protos/src/Rpc/ErrorInfo.php | 201 + .../Gcp/google/common-protos/src/Rpc/Help.php | 64 + .../common-protos/src/Rpc/Help/Link.php | 92 + .../src/Rpc/LocalizedMessage.php | 101 + .../src/Rpc/PreconditionFailure.php | 64 + .../src/Rpc/PreconditionFailure/Violation.php | 147 + .../common-protos/src/Rpc/QuotaFailure.php | 69 + .../src/Rpc/QuotaFailure/Violation.php | 121 + .../common-protos/src/Rpc/RequestInfo.php | 101 + .../common-protos/src/Rpc/ResourceInfo.php | 190 + .../common-protos/src/Rpc/RetryInfo.php | 79 + .../google/common-protos/src/Rpc/Status.php | 148 + .../common-protos/src/Type/CalendarPeriod.php | 85 + .../google/common-protos/src/Type/Color.php | 340 ++ .../google/common-protos/src/Type/Date.php | 149 + .../common-protos/src/Type/DateTime.php | 360 ++ .../common-protos/src/Type/DayOfWeek.php | 79 + .../google/common-protos/src/Type/Decimal.php | 238 + .../google/common-protos/src/Type/Expr.php | 195 + .../common-protos/src/Type/Fraction.php | 96 + .../common-protos/src/Type/Interval.php | 128 + .../google/common-protos/src/Type/LatLng.php | 96 + .../common-protos/src/Type/LocalizedText.php | 100 + .../google/common-protos/src/Type/Money.php | 147 + .../google/common-protos/src/Type/Month.php | 109 + .../common-protos/src/Type/PhoneNumber.php | 215 + .../src/Type/PhoneNumber/ShortCode.php | 115 + .../common-protos/src/Type/PostalAddress.php | 592 +++ .../common-protos/src/Type/Quaternion.php | 196 + .../common-protos/src/Type/TimeOfDay.php | 165 + .../common-protos/src/Type/TimeZone.php | 93 + vendor/Gcp/google/crc32/CONTRIBUTING.md | 28 - vendor/Gcp/google/crc32/README.md | 138 - vendor/Gcp/google/crc32/composer.json | 25 - vendor/Gcp/google/crc32/crc32_benchmark.php | 104 - vendor/Gcp/google/crc32/ext/config.m4 | 63 - vendor/Gcp/google/crc32/ext/hash_crc32c.c | 75 - vendor/Gcp/google/crc32/ext/install_crc32c.sh | 34 - vendor/Gcp/google/crc32/ext/php_crc32c.c | 174 - vendor/Gcp/google/crc32/ext/php_crc32c.h | 53 - vendor/Gcp/google/crc32/src/Builtin.php | 75 - vendor/Gcp/google/crc32/src/CRC32.php | 97 - vendor/Gcp/google/crc32/src/CRCInterface.php | 56 - vendor/Gcp/google/crc32/src/CRCTrait.php | 53 - vendor/Gcp/google/crc32/src/Google.php | 61 - vendor/Gcp/google/crc32/src/PHP.php | 71 - vendor/Gcp/google/crc32/src/PHPSlicedBy4.php | 89 - vendor/Gcp/google/crc32/src/Table.php | 104 - vendor/Gcp/google/gax/CHANGELOG.md | 261 + vendor/Gcp/google/gax/CODE_OF_CONDUCT.md | 43 + vendor/Gcp/google/gax/LICENSE | 25 + vendor/Gcp/google/gax/README.md | 98 + vendor/Gcp/google/gax/SECURITY.md | 7 + vendor/Gcp/google/gax/VERSION | 1 + vendor/Gcp/google/gax/composer.json | 45 + vendor/Gcp/google/gax/metadata/README.md | 6 + vendor/Gcp/google/gax/phpstan.neon.dist | 5 + vendor/Gcp/google/gax/phpunit.xml.dist | 13 + vendor/Gcp/google/gax/renovate.json | 7 + vendor/Gcp/google/gax/src/AgentHeader.php | 116 + vendor/Gcp/google/gax/src/ApiException.php | 267 + vendor/Gcp/google/gax/src/ApiStatus.php | 117 + vendor/Gcp/google/gax/src/ArrayTrait.php | 138 + vendor/Gcp/google/gax/src/BidiStream.php | 168 + vendor/Gcp/google/gax/src/Call.php | 111 + .../Gcp/google/gax/src/ClientOptionsTrait.php | 247 + vendor/Gcp/google/gax/src/ClientStream.php | 104 + .../Gcp/google/gax/src/CredentialsWrapper.php | 277 ++ .../google/gax/src/FixedSizeCollection.php | 172 + vendor/Gcp/google/gax/src/GPBLabel.php | 44 + vendor/Gcp/google/gax/src/GPBType.php | 59 + .../Gcp/google/gax/src/GapicClientTrait.php | 701 +++ .../Gcp/google/gax/src/GrpcSupportTrait.php | 58 + .../gax/src/InsecureCredentialsWrapper.php | 54 + .../CredentialsWrapperMiddleware.php | 56 + .../src/Middleware/FixedHeaderMiddleware.php | 63 + .../src/Middleware/MiddlewareInterface.php | 90 + .../src/Middleware/OperationsMiddleware.php | 64 + .../Middleware/OptionsFilterMiddleware.php | 58 + .../gax/src/Middleware/PagedMiddleware.php | 67 + .../Middleware/ResponseMetadataMiddleware.php | 67 + .../gax/src/Middleware/RetryMiddleware.php | 150 + .../Gcp/google/gax/src/OperationResponse.php | 414 ++ .../google/gax/src/Options/CallOptions.php | 138 + .../google/gax/src/Options/ClientOptions.php | 284 ++ .../google/gax/src/Options/OptionsTrait.php | 84 + .../gax/src/Options/TransportOptions.php | 81 + .../GrpcFallbackTransportOptions.php | 88 + .../TransportOptions/GrpcTransportOptions.php | 120 + .../TransportOptions/RestTransportOptions.php | 102 + vendor/Gcp/google/gax/src/Page.php | 220 + .../gax/src/PageStreamingDescriptor.php | 151 + .../Gcp/google/gax/src/PagedListResponse.php | 189 + vendor/Gcp/google/gax/src/PathTemplate.php | 106 + vendor/Gcp/google/gax/src/PollingTrait.php | 90 + vendor/Gcp/google/gax/src/RequestBuilder.php | 234 + .../gax/src/RequestParamsHeaderDescriptor.php | 72 + .../google/gax/src/ResourceHelperTrait.php | 100 + .../AbsoluteResourceTemplate.php | 135 + .../gax/src/ResourceTemplate/Parser.php | 207 + .../RelativeResourceTemplate.php | 336 ++ .../ResourceTemplateInterface.php | 87 + .../gax/src/ResourceTemplate/Segment.php | 173 + vendor/Gcp/google/gax/src/RetrySettings.php | 462 ++ vendor/Gcp/google/gax/src/Serializer.php | 421 ++ vendor/Gcp/google/gax/src/ServerStream.php | 93 + .../gax/src/ServerStreamingCallInterface.php | 87 + .../google/gax/src/ServiceAddressTrait.php | 63 + .../gax/src/Transport/Grpc/ForwardingCall.php | 84 + .../Grpc/ForwardingServerStreamingCall.php | 62 + .../Transport/Grpc/ForwardingUnaryCall.php | 54 + .../Grpc/ServerStreamingCallWrapper.php | 113 + .../Grpc/UnaryInterceptorInterface.php | 54 + .../src/Transport/GrpcFallbackTransport.php | 179 + .../gax/src/Transport/GrpcTransport.php | 212 + .../src/Transport/HttpUnaryTransportTrait.php | 150 + .../src/Transport/Rest/JsonStreamDecoder.php | 215 + .../Rest/RestServerStreamingCall.php | 173 + .../gax/src/Transport/RestTransport.php | 200 + .../gax/src/Transport/TransportInterface.php | 86 + vendor/Gcp/google/gax/src/UriTrait.php | 63 + .../google/gax/src/ValidationException.php | 41 + vendor/Gcp/google/gax/src/ValidationTrait.php | 78 + vendor/Gcp/google/gax/src/Version.php | 73 + vendor/Gcp/google/grpc-gcp/LICENSE | 202 + vendor/Gcp/google/grpc-gcp/README.md | 14 + .../cloudprober/bins/opt/grpc_php_plugin | Bin 0 -> 2295352 bytes .../grpc-gcp/cloudprober/cloudprober.cfg | 31 + .../google/grpc-gcp/cloudprober/codegen.sh | 13 + .../google/grpc-gcp/cloudprober/composer.json | 9 + .../grpc_gpc_prober/firestore_probes.php | 25 + .../cloudprober/grpc_gpc_prober/prober.php | 85 + .../grpc_gpc_prober/spanner_probes.php | 245 + .../grpc_gpc_prober/stackdriver_util.php | 58 + vendor/Gcp/google/grpc-gcp/composer.json | 24 + .../grpc-gcp/doc/gRPC-client-user-guide.md | 217 + vendor/Gcp/google/grpc-gcp/src/ChannelRef.php | 93 + vendor/Gcp/google/grpc-gcp/src/Config.php | 106 + .../src/CreatedByDeserializeCheck.php | 79 + .../grpc-gcp/src/GCPBidiStreamingCall.php | 102 + .../google/grpc-gcp/src/GCPCallInvoker.php | 83 + .../grpc-gcp/src/GCPClientStreamCall.php | 74 + .../grpc-gcp/src/GCPServerStreamCall.php | 84 + .../Gcp/google/grpc-gcp/src/GCPUnaryCall.php | 68 + .../Gcp/google/grpc-gcp/src/GcpBaseCall.php | 207 + .../grpc-gcp/src/GcpExtensionChannel.php | 264 + .../src/generated/GPBMetadata/GrpcGcp.php | 19 + .../src/generated/Grpc/Gcp/AffinityConfig.php | 79 + .../Grpc/Gcp/AffinityConfig_Command.php | 38 + .../src/generated/Grpc/Gcp/ApiConfig.php | 76 + .../generated/Grpc/Gcp/ChannelPoolConfig.php | 111 + .../src/generated/Grpc/Gcp/MethodConfig.php | 82 + vendor/Gcp/google/grpc-gcp/src/grpc_gcp.proto | 70 + .../Gcp/google/longrunning/CODE_OF_CONDUCT.md | 43 + vendor/Gcp/google/longrunning/CONTRIBUTING.md | 10 + vendor/Gcp/google/longrunning/LICENSE | 202 + vendor/Gcp/google/longrunning/README.md | 39 + vendor/Gcp/google/longrunning/SECURITY.md | 7 + vendor/Gcp/google/longrunning/VERSION | 1 + vendor/Gcp/google/longrunning/composer.json | 26 + .../metadata/Longrunning/Operations.php | Bin 0 -> 2867 bytes .../Gcp/google/longrunning/metadata/README.md | 6 + .../Gapic/OperationsGapicClient.php | 15 + .../ApiCore/LongRunning/OperationsClient.php | 16 + .../LongRunning/CancelOperationRequest.php | 72 + .../LongRunning/Client/OperationsClient.php | 304 ++ .../LongRunning/DeleteOperationRequest.php | 72 + .../Gapic/OperationsGapicClient.php | 403 ++ .../src/LongRunning/GetOperationRequest.php | 72 + .../src/LongRunning/ListOperationsRequest.php | 166 + .../LongRunning/ListOperationsResponse.php | 92 + .../longrunning/src/LongRunning/Operation.php | 247 + .../src/LongRunning/OperationInfo.php | 136 + .../src/LongRunning/OperationsClient.php | 33 + .../src/LongRunning/OperationsGrpcClient.php | 129 + .../src/LongRunning/WaitOperationRequest.php | 108 + .../resources/operations_client_config.json | 59 + .../operations_descriptor_config.php | 24 + .../operations_rest_client_config.php | 24 + vendor/Gcp/google/protobuf/LICENSE | 29 + vendor/Gcp/google/protobuf/README.md | 2 + vendor/Gcp/google/protobuf/composer.json | 25 + .../src/GPBMetadata/Google/Protobuf/Any.php | 25 + .../src/GPBMetadata/Google/Protobuf/Api.php | 43 + .../GPBMetadata/Google/Protobuf/Duration.php | 25 + .../GPBMetadata/Google/Protobuf/FieldMask.php | 24 + .../GPBMetadata/Google/Protobuf/GPBEmpty.php | 24 + .../Google/Protobuf/Internal/Descriptor.php | 52 + .../Google/Protobuf/SourceContext.php | 24 + .../GPBMetadata/Google/Protobuf/Struct.php | Bin 0 -> 1220 bytes .../GPBMetadata/Google/Protobuf/Timestamp.php | 25 + .../src/GPBMetadata/Google/Protobuf/Type.php | Bin 0 -> 2337 bytes .../GPBMetadata/Google/Protobuf/Wrappers.php | 44 + .../protobuf/src/Google/Protobuf/Any.php | 248 + .../protobuf/src/Google/Protobuf/Api.php | 334 ++ .../src/Google/Protobuf/BoolValue.php | 62 + .../src/Google/Protobuf/BytesValue.php | 62 + .../src/Google/Protobuf/Descriptor.php | 74 + .../src/Google/Protobuf/DescriptorPool.php | 47 + .../src/Google/Protobuf/DoubleValue.php | 62 + .../protobuf/src/Google/Protobuf/Duration.php | 164 + .../protobuf/src/Google/Protobuf/Enum.php | 193 + .../src/Google/Protobuf/EnumDescriptor.php | 50 + .../src/Google/Protobuf/EnumValue.php | 123 + .../Google/Protobuf/EnumValueDescriptor.php | 37 + .../protobuf/src/Google/Protobuf/Field.php | 348 ++ .../src/Google/Protobuf/Field/Cardinality.php | 57 + .../src/Google/Protobuf/Field/Kind.php | 147 + .../src/Google/Protobuf/FieldDescriptor.php | 107 + .../src/Google/Protobuf/FieldMask.php | 211 + .../src/Google/Protobuf/Field_Cardinality.php | 17 + .../src/Google/Protobuf/Field_Kind.php | 17 + .../src/Google/Protobuf/FloatValue.php | 62 + .../protobuf/src/Google/Protobuf/GPBEmpty.php | 35 + .../src/Google/Protobuf/Int32Value.php | 62 + .../src/Google/Protobuf/Int64Value.php | 62 + .../src/Google/Protobuf/Internal/AnyBase.php | 74 + .../Protobuf/Internal/CodedInputStream.php | 314 ++ .../Protobuf/Internal/CodedOutputStream.php | 117 + .../Google/Protobuf/Internal/Descriptor.php | 170 + .../Protobuf/Internal/DescriptorPool.php | 147 + .../Protobuf/Internal/DescriptorProto.php | 299 ++ .../DescriptorProto/ExtensionRange.php | 142 + .../DescriptorProto/ReservedRange.php | 114 + .../DescriptorProto_ExtensionRange.php | 17 + .../DescriptorProto_ReservedRange.php | 17 + .../Protobuf/Internal/EnumBuilderContext.php | 34 + .../Protobuf/Internal/EnumDescriptor.php | 91 + .../Protobuf/Internal/EnumDescriptorProto.php | 194 + .../EnumDescriptorProto/EnumReservedRange.php | 116 + .../EnumDescriptorProto_EnumReservedRange.php | 17 + .../Google/Protobuf/Internal/EnumOptions.php | 221 + .../Internal/EnumValueDescriptorProto.php | 128 + .../Protobuf/Internal/EnumValueOptions.php | 112 + .../Internal/ExtensionRangeOptions.php | 61 + .../Protobuf/Internal/FieldDescriptor.php | 237 + .../Internal/FieldDescriptorProto.php | 553 +++ .../Internal/FieldDescriptorProto/Label.php | 45 + .../Internal/FieldDescriptorProto/Type.php | 125 + .../Internal/FieldDescriptorProto_Label.php | 17 + .../Internal/FieldDescriptorProto_Type.php | 17 + .../Google/Protobuf/Internal/FieldOptions.php | 518 ++ .../Protobuf/Internal/FieldOptions/CType.php | 45 + .../Protobuf/Internal/FieldOptions/JSType.php | 49 + .../Protobuf/Internal/FieldOptions_CType.php | 17 + .../Protobuf/Internal/FieldOptions_JSType.php | 17 + .../Protobuf/Internal/FileDescriptor.php | 52 + .../Protobuf/Internal/FileDescriptorProto.php | 479 ++ .../Protobuf/Internal/FileDescriptorSet.php | 57 + .../Google/Protobuf/Internal/FileOptions.php | 1000 ++++ .../Internal/FileOptions/OptimizeMode.php | 51 + .../Internal/FileOptions_OptimizeMode.php | 17 + .../Protobuf/Internal/GPBDecodeException.php | 17 + .../Google/Protobuf/Internal/GPBJsonWire.php | 248 + .../src/Google/Protobuf/Internal/GPBLabel.php | 16 + .../src/Google/Protobuf/Internal/GPBType.php | 31 + .../src/Google/Protobuf/Internal/GPBUtil.php | 504 ++ .../src/Google/Protobuf/Internal/GPBWire.php | 534 ++ .../Google/Protobuf/Internal/GPBWireType.php | 19 + .../Protobuf/Internal/GeneratedCodeInfo.php | 69 + .../Internal/GeneratedCodeInfo/Annotation.php | 228 + .../Internal/GeneratedCodeInfo_Annotation.php | 17 + .../Internal/GetPublicDescriptorTrait.php | 17 + .../Internal/HasPublicDescriptorTrait.php | 18 + .../src/Google/Protobuf/Internal/MapEntry.php | 46 + .../src/Google/Protobuf/Internal/MapField.php | 256 + .../Google/Protobuf/Internal/MapFieldIter.php | 113 + .../src/Google/Protobuf/Internal/Message.php | 1860 +++++++ .../Internal/MessageBuilderContext.php | 70 + .../Protobuf/Internal/MessageOptions.php | 435 ++ .../Internal/MethodDescriptorProto.php | 249 + .../Protobuf/Internal/MethodOptions.php | 144 + .../MethodOptions/IdempotencyLevel.php | 51 + .../MethodOptions_IdempotencyLevel.php | 17 + .../Protobuf/Internal/OneofDescriptor.php | 54 + .../Internal/OneofDescriptorProto.php | 96 + .../Google/Protobuf/Internal/OneofField.php | 45 + .../Google/Protobuf/Internal/OneofOptions.php | 61 + .../Protobuf/Internal/RawInputStream.php | 22 + .../Protobuf/Internal/RepeatedField.php | 224 + .../Protobuf/Internal/RepeatedFieldIter.php | 93 + .../Internal/ServiceDescriptorProto.php | 120 + .../Protobuf/Internal/ServiceOptions.php | 112 + .../Protobuf/Internal/SourceCodeInfo.php | 224 + .../Internal/SourceCodeInfo/Location.php | 425 ++ .../Internal/SourceCodeInfo_Location.php | 17 + .../Protobuf/Internal/TimestampBase.php | 31 + .../Protobuf/Internal/UninterpretedOption.php | 264 + .../Internal/UninterpretedOption/NamePart.php | 102 + .../Internal/UninterpretedOption_NamePart.php | 17 + .../src/Google/Protobuf/ListValue.php | 62 + .../protobuf/src/Google/Protobuf/Method.php | 247 + .../protobuf/src/Google/Protobuf/Mixin.php | 157 + .../src/Google/Protobuf/NullValue.php | 39 + .../src/Google/Protobuf/OneofDescriptor.php | 53 + .../protobuf/src/Google/Protobuf/Option.php | 125 + .../src/Google/Protobuf/SourceContext.php | 66 + .../src/Google/Protobuf/StringValue.php | 62 + .../protobuf/src/Google/Protobuf/Struct.php | 67 + .../protobuf/src/Google/Protobuf/Syntax.php | 43 + .../src/Google/Protobuf/Timestamp.php | 177 + .../protobuf/src/Google/Protobuf/Type.php | 224 + .../src/Google/Protobuf/UInt32Value.php | 62 + .../src/Google/Protobuf/UInt64Value.php | 62 + .../protobuf/src/Google/Protobuf/Value.php | 216 + .../Gcp/google/protobuf/src/phpdoc.dist.xml | 15 + vendor/Gcp/grpc/grpc/LICENSE | 201 + vendor/Gcp/grpc/grpc/MAINTAINERS.md | 16 + vendor/Gcp/grpc/grpc/README.md | 9 + vendor/Gcp/grpc/grpc/composer.json | 26 + vendor/Gcp/grpc/grpc/etc/roots.pem | 4337 +++++++++++++++++ vendor/Gcp/grpc/grpc/src/lib/AbstractCall.php | 129 + vendor/Gcp/grpc/grpc/src/lib/BaseStub.php | 456 ++ .../grpc/grpc/src/lib/BidiStreamingCall.php | 90 + vendor/Gcp/grpc/grpc/src/lib/CallInvoker.php | 33 + .../grpc/grpc/src/lib/ClientStreamingCall.php | 67 + .../grpc/grpc/src/lib/DefaultCallInvoker.php | 47 + vendor/Gcp/grpc/grpc/src/lib/Interceptor.php | 64 + .../src/lib/Internal/InterceptorChannel.php | 66 + .../grpc/grpc/src/lib/MethodDescriptor.php | 45 + vendor/Gcp/grpc/grpc/src/lib/RpcServer.php | 108 + .../grpc/grpc/src/lib/ServerCallReader.php | 47 + .../grpc/grpc/src/lib/ServerCallWriter.php | 77 + .../Gcp/grpc/grpc/src/lib/ServerContext.php | 69 + .../grpc/grpc/src/lib/ServerStreamingCall.php | 87 + vendor/Gcp/grpc/grpc/src/lib/Status.php | 50 + vendor/Gcp/grpc/grpc/src/lib/UnaryCall.php | 75 + vendor/Gcp/guzzlehttp/guzzle/CHANGELOG.md | 59 +- vendor/Gcp/guzzlehttp/guzzle/README.md | 12 +- vendor/Gcp/guzzlehttp/guzzle/UPGRADING.md | 16 +- vendor/Gcp/guzzlehttp/guzzle/composer.json | 38 +- .../guzzlehttp/guzzle/src/BodySummarizer.php | 4 +- vendor/Gcp/guzzlehttp/guzzle/src/Client.php | 2 +- .../guzzle/src/Cookie/CookieJar.php | 14 +- .../guzzle/src/Cookie/CookieJarInterface.php | 1 + .../guzzle/src/Cookie/SetCookie.php | 4 +- .../src/Exception/BadResponseException.php | 2 +- .../guzzle/src/Exception/ConnectException.php | 2 +- .../guzzle/src/Exception/RequestException.php | 19 +- .../guzzle/src/Handler/CurlFactory.php | 112 +- .../guzzle/src/Handler/CurlMultiHandler.php | 23 +- .../guzzle/src/Handler/MockHandler.php | 8 +- .../guzzle/src/Handler/StreamHandler.php | 8 +- .../guzzlehttp/guzzle/src/HandlerStack.php | 2 +- .../Gcp/guzzlehttp/guzzle/src/Middleware.php | 6 +- .../guzzle/src/PrepareBodyMiddleware.php | 4 +- .../guzzlehttp/guzzle/src/RequestOptions.php | 6 +- .../guzzlehttp/guzzle/src/RetryMiddleware.php | 4 +- vendor/Gcp/guzzlehttp/guzzle/src/Utils.php | 19 +- vendor/Gcp/guzzlehttp/promises/CHANGELOG.md | 21 + vendor/Gcp/guzzlehttp/promises/README.md | 8 +- vendor/Gcp/guzzlehttp/promises/composer.json | 4 +- .../Gcp/guzzlehttp/promises/src/Coroutine.php | 2 +- vendor/Gcp/guzzlehttp/promises/src/Each.php | 13 +- .../guzzlehttp/promises/src/EachPromise.php | 6 +- .../promises/src/FulfilledPromise.php | 2 +- .../Gcp/guzzlehttp/promises/src/Promise.php | 4 +- .../promises/src/PromiseInterface.php | 2 +- .../promises/src/RejectedPromise.php | 2 +- vendor/Gcp/guzzlehttp/promises/src/Utils.php | 6 +- vendor/Gcp/guzzlehttp/psr7/CHANGELOG.md | 34 + vendor/Gcp/guzzlehttp/psr7/README.md | 33 +- vendor/Gcp/guzzlehttp/psr7/composer.json | 6 +- .../Gcp/guzzlehttp/psr7/src/AppendStream.php | 2 - .../Gcp/guzzlehttp/psr7/src/BufferStream.php | 2 - .../Gcp/guzzlehttp/psr7/src/CachingStream.php | 2 +- vendor/Gcp/guzzlehttp/psr7/src/FnStream.php | 35 +- vendor/Gcp/guzzlehttp/psr7/src/Header.php | 2 +- .../Gcp/guzzlehttp/psr7/src/HttpFactory.php | 2 +- .../Gcp/guzzlehttp/psr7/src/InflateStream.php | 8 +- vendor/Gcp/guzzlehttp/psr7/src/Message.php | 10 +- .../Gcp/guzzlehttp/psr7/src/MessageTrait.php | 12 +- .../guzzlehttp/psr7/src/MultipartStream.php | 22 +- vendor/Gcp/guzzlehttp/psr7/src/PumpStream.php | 10 +- vendor/Gcp/guzzlehttp/psr7/src/Query.php | 22 +- vendor/Gcp/guzzlehttp/psr7/src/Request.php | 4 +- vendor/Gcp/guzzlehttp/psr7/src/Response.php | 4 +- .../Gcp/guzzlehttp/psr7/src/ServerRequest.php | 6 +- vendor/Gcp/guzzlehttp/psr7/src/Stream.php | 6 +- .../psr7/src/StreamDecoratorTrait.php | 4 +- .../Gcp/guzzlehttp/psr7/src/StreamWrapper.php | 39 +- .../Gcp/guzzlehttp/psr7/src/UploadedFile.php | 6 +- vendor/Gcp/guzzlehttp/psr7/src/Uri.php | 30 +- .../Gcp/guzzlehttp/psr7/src/UriNormalizer.php | 10 +- .../Gcp/guzzlehttp/psr7/src/UriResolver.php | 6 +- vendor/Gcp/guzzlehttp/psr7/src/Utils.php | 17 +- vendor/Gcp/monolog/monolog/CHANGELOG.md | 18 + vendor/Gcp/monolog/monolog/composer.json | 4 +- .../monolog/src/Monolog/DateTimeImmutable.php | 2 + .../monolog/src/Monolog/ErrorHandler.php | 2 +- .../src/Monolog/Formatter/JsonFormatter.php | 3 + .../src/Monolog/Formatter/LineFormatter.php | 2 +- .../Monolog/Formatter/NormalizerFormatter.php | 3 + .../Monolog/Handler/ElasticsearchHandler.php | 1 + .../src/Monolog/Handler/FilterHandler.php | 2 +- .../Monolog/Handler/FingersCrossedHandler.php | 2 +- .../Monolog/Handler/RotatingFileHandler.php | 10 +- .../src/Monolog/Handler/SamplingHandler.php | 2 +- .../src/Monolog/Handler/Slack/SlackRecord.php | 2 +- .../src/Monolog/Handler/StreamHandler.php | 51 +- .../Monolog/Handler/TelegramBotHandler.php | 8 +- .../monolog/monolog/src/Monolog/Logger.php | 9 +- .../src/Monolog/Processor/WebProcessor.php | 2 +- .../Gcp/monolog/monolog/src/Monolog/Utils.php | 2 +- vendor/Gcp/psr/http-client/CHANGELOG.md | 8 + vendor/Gcp/psr/http-client/composer.json | 3 + vendor/Gcp/psr/http-factory/composer.json | 7 +- .../src/UploadedFileFactoryInterface.php | 8 +- vendor/Gcp/ramsey/collection/README.md | 70 + .../ramsey/collection/src/AbstractArray.php | 2 +- vendor/Gcp/ramsey/uuid/README.md | 83 + .../Gcp/symfony/deprecation-contracts/LICENSE | 2 +- vendor/Gcp/symfony/polyfill-ctype/LICENSE | 2 +- vendor/Gcp/symfony/polyfill-ctype/README.md | 12 + .../Gcp/symfony/polyfill-ctype/composer.json | 5 +- vendor/Gcp/symfony/polyfill-php80/LICENSE | 2 +- vendor/Gcp/symfony/polyfill-php80/README.md | 25 + .../Resources/stubs/Attribute.php | 2 +- .../Gcp/symfony/polyfill-php80/composer.json | 5 +- vendor/Gcp/symfony/polyfill-php81/LICENSE | 2 +- vendor/Gcp/symfony/polyfill-php81/README.md | 18 + .../Resources/stubs/CURLStringFile.php | 45 + .../Resources/stubs/ReturnTypeWillChange.php | 2 +- .../Gcp/symfony/polyfill-php81/composer.json | 5 +- wordpress-s3.php | 4 +- 716 files changed, 73204 insertions(+), 2715 deletions(-) create mode 100644 vendor/Gcp/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php create mode 100644 vendor/Gcp/google/auth/VERSION create mode 100644 vendor/Gcp/google/auth/src/CredentialSource/AwsNativeSource.php create mode 100644 vendor/Gcp/google/auth/src/CredentialSource/FileSource.php create mode 100644 vendor/Gcp/google/auth/src/CredentialSource/UrlSource.php create mode 100644 vendor/Gcp/google/auth/src/Credentials/ExternalAccountCredentials.php create mode 100644 vendor/Gcp/google/auth/src/ExternalAccountCredentialSourceInterface.php create mode 100644 vendor/Gcp/google/auth/src/GetUniverseDomainInterface.php create mode 100644 vendor/Gcp/google/auth/src/UpdateMetadataTrait.php create mode 100644 vendor/Gcp/google/cloud-core/src/ApiHelperTrait.php create mode 100644 vendor/Gcp/google/cloud-core/src/DetectProjectIdTrait.php create mode 100644 vendor/Gcp/google/cloud-core/src/Iam/IamManager.php create mode 100644 vendor/Gcp/google/cloud-core/src/RequestHandler.php create mode 100644 vendor/Gcp/google/cloud-core/src/RequestProcessorTrait.php create mode 100644 vendor/Gcp/google/common-protos/CHANGELOG.md create mode 100644 vendor/Gcp/google/common-protos/CODE_OF_CONDUCT.md create mode 100644 vendor/Gcp/google/common-protos/CONTRIBUTING.md rename vendor/Gcp/google/{crc32 => common-protos}/LICENSE (100%) create mode 100644 vendor/Gcp/google/common-protos/README.md create mode 100644 vendor/Gcp/google/common-protos/SECURITY.md create mode 100644 vendor/Gcp/google/common-protos/composer.json create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Annotations.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Auth.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Backend.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Billing.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Client.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/ConfigChange.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Consumer.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Context.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Control.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Distribution.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Documentation.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Endpoint.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/ErrorReason.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/FieldBehavior.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/FieldInfo.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Http.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Httpbody.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Label.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/LaunchStage.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Log.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Logging.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Metric.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/MonitoredResource.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Monitoring.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Policy.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Quota.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Resource.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Routing.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Service.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/SourceInfo.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/SystemParameter.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Usage.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Api/Visibility.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Cloud/ExtendedOperations.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Cloud/Location/Locations.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Iam/V1/IamPolicy.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Iam/V1/Logging/AuditData.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Iam/V1/Options.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Iam/V1/Policy.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Logging/Type/HttpRequest.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Logging/Type/LogSeverity.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Rpc/Code.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Rpc/Context/AttributeContext.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Rpc/Context/AuditContext.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Rpc/ErrorDetails.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Rpc/Status.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/CalendarPeriod.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Color.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Date.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Datetime.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Dayofweek.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Decimal.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Expr.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Fraction.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Interval.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Latlng.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/LocalizedText.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Money.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Month.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/PhoneNumber.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/PostalAddress.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Quaternion.php create mode 100644 vendor/Gcp/google/common-protos/metadata/Type/Timeofday.php create mode 100644 vendor/Gcp/google/common-protos/owlbot.py create mode 100644 vendor/Gcp/google/common-protos/renovate.json create mode 100644 vendor/Gcp/google/common-protos/src/Api/Advice.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/AuthProvider.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/AuthRequirement.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Authentication.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/AuthenticationRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Backend.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/BackendRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/BackendRule/PathTranslation.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Billing.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Billing/BillingDestination.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ChangeType.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ClientLibraryDestination.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ClientLibraryOrganization.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ClientLibrarySettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/CommonLanguageSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ConfigChange.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Context.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ContextRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Control.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/CppSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/CustomHttpPattern.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/Exemplar.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Distribution/Range.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Documentation.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/DocumentationRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/DotnetSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Endpoint.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ErrorReason.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/FieldBehavior.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/FieldInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/FieldInfo/Format.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/FieldPolicy.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/GoSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Http.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/HttpBody.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/HttpRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/JavaSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/JwtLocation.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/LabelDescriptor.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/LabelDescriptor/ValueType.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/LaunchStage.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/LogDescriptor.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Logging.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Logging/LoggingDestination.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MethodPolicy.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MethodSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MethodSettings/LongRunning.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Metric.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MetricDescriptor.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricKind.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/ValueType.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MetricRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MonitoredResource.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MonitoredResourceDescriptor.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/MonitoredResourceMetadata.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Monitoring.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Monitoring/MonitoringDestination.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/NodeSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/OAuthRequirements.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Page.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/PhpSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ProjectProperties.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Property.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Property/PropertyType.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Publishing.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/PythonSettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Quota.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/QuotaLimit.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/History.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/Style.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/ResourceReference.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/RoutingParameter.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/RoutingRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/RubySettings.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Service.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/SourceInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/SystemParameter.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/SystemParameterRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/SystemParameters.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Usage.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/UsageRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/Visibility.php create mode 100644 vendor/Gcp/google/common-protos/src/Api/VisibilityRule.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Binding.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Policy.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Location/GetLocationRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsResponse.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Location/Location.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php create mode 100644 vendor/Gcp/google/common-protos/src/Cloud/OperationResponseMapping.php create mode 100644 vendor/Gcp/google/common-protos/src/Iam/V1/Logging/AuditData.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/BadRequest.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/BadRequest/FieldViolation.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Code.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Api.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Request.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Response.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Context/AuditContext.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/DebugInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/ErrorInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Help.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Help/Link.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/LocalizedMessage.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure/Violation.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure/Violation.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/RequestInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/ResourceInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/RetryInfo.php create mode 100644 vendor/Gcp/google/common-protos/src/Rpc/Status.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/CalendarPeriod.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Color.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Date.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/DateTime.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/DayOfWeek.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Decimal.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Expr.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Fraction.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Interval.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/LatLng.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/LocalizedText.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Money.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Month.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/PhoneNumber.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/PhoneNumber/ShortCode.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/PostalAddress.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/Quaternion.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/TimeOfDay.php create mode 100644 vendor/Gcp/google/common-protos/src/Type/TimeZone.php delete mode 100644 vendor/Gcp/google/crc32/CONTRIBUTING.md delete mode 100644 vendor/Gcp/google/crc32/README.md delete mode 100644 vendor/Gcp/google/crc32/composer.json delete mode 100644 vendor/Gcp/google/crc32/crc32_benchmark.php delete mode 100644 vendor/Gcp/google/crc32/ext/config.m4 delete mode 100644 vendor/Gcp/google/crc32/ext/hash_crc32c.c delete mode 100644 vendor/Gcp/google/crc32/ext/install_crc32c.sh delete mode 100644 vendor/Gcp/google/crc32/ext/php_crc32c.c delete mode 100644 vendor/Gcp/google/crc32/ext/php_crc32c.h delete mode 100644 vendor/Gcp/google/crc32/src/Builtin.php delete mode 100644 vendor/Gcp/google/crc32/src/CRC32.php delete mode 100644 vendor/Gcp/google/crc32/src/CRCInterface.php delete mode 100644 vendor/Gcp/google/crc32/src/CRCTrait.php delete mode 100644 vendor/Gcp/google/crc32/src/Google.php delete mode 100644 vendor/Gcp/google/crc32/src/PHP.php delete mode 100644 vendor/Gcp/google/crc32/src/PHPSlicedBy4.php delete mode 100644 vendor/Gcp/google/crc32/src/Table.php create mode 100644 vendor/Gcp/google/gax/CHANGELOG.md create mode 100644 vendor/Gcp/google/gax/CODE_OF_CONDUCT.md create mode 100644 vendor/Gcp/google/gax/LICENSE create mode 100644 vendor/Gcp/google/gax/README.md create mode 100644 vendor/Gcp/google/gax/SECURITY.md create mode 100644 vendor/Gcp/google/gax/VERSION create mode 100644 vendor/Gcp/google/gax/composer.json create mode 100644 vendor/Gcp/google/gax/metadata/README.md create mode 100644 vendor/Gcp/google/gax/phpstan.neon.dist create mode 100644 vendor/Gcp/google/gax/phpunit.xml.dist create mode 100644 vendor/Gcp/google/gax/renovate.json create mode 100644 vendor/Gcp/google/gax/src/AgentHeader.php create mode 100644 vendor/Gcp/google/gax/src/ApiException.php create mode 100644 vendor/Gcp/google/gax/src/ApiStatus.php create mode 100644 vendor/Gcp/google/gax/src/ArrayTrait.php create mode 100644 vendor/Gcp/google/gax/src/BidiStream.php create mode 100644 vendor/Gcp/google/gax/src/Call.php create mode 100644 vendor/Gcp/google/gax/src/ClientOptionsTrait.php create mode 100644 vendor/Gcp/google/gax/src/ClientStream.php create mode 100644 vendor/Gcp/google/gax/src/CredentialsWrapper.php create mode 100644 vendor/Gcp/google/gax/src/FixedSizeCollection.php create mode 100644 vendor/Gcp/google/gax/src/GPBLabel.php create mode 100644 vendor/Gcp/google/gax/src/GPBType.php create mode 100644 vendor/Gcp/google/gax/src/GapicClientTrait.php create mode 100644 vendor/Gcp/google/gax/src/GrpcSupportTrait.php create mode 100644 vendor/Gcp/google/gax/src/InsecureCredentialsWrapper.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/CredentialsWrapperMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/FixedHeaderMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/MiddlewareInterface.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/OperationsMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/OptionsFilterMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/PagedMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/ResponseMetadataMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/Middleware/RetryMiddleware.php create mode 100644 vendor/Gcp/google/gax/src/OperationResponse.php create mode 100644 vendor/Gcp/google/gax/src/Options/CallOptions.php create mode 100644 vendor/Gcp/google/gax/src/Options/ClientOptions.php create mode 100644 vendor/Gcp/google/gax/src/Options/OptionsTrait.php create mode 100644 vendor/Gcp/google/gax/src/Options/TransportOptions.php create mode 100644 vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php create mode 100644 vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php create mode 100644 vendor/Gcp/google/gax/src/Options/TransportOptions/RestTransportOptions.php create mode 100644 vendor/Gcp/google/gax/src/Page.php create mode 100644 vendor/Gcp/google/gax/src/PageStreamingDescriptor.php create mode 100644 vendor/Gcp/google/gax/src/PagedListResponse.php create mode 100644 vendor/Gcp/google/gax/src/PathTemplate.php create mode 100644 vendor/Gcp/google/gax/src/PollingTrait.php create mode 100644 vendor/Gcp/google/gax/src/RequestBuilder.php create mode 100644 vendor/Gcp/google/gax/src/RequestParamsHeaderDescriptor.php create mode 100644 vendor/Gcp/google/gax/src/ResourceHelperTrait.php create mode 100644 vendor/Gcp/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php create mode 100644 vendor/Gcp/google/gax/src/ResourceTemplate/Parser.php create mode 100644 vendor/Gcp/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php create mode 100644 vendor/Gcp/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php create mode 100644 vendor/Gcp/google/gax/src/ResourceTemplate/Segment.php create mode 100644 vendor/Gcp/google/gax/src/RetrySettings.php create mode 100644 vendor/Gcp/google/gax/src/Serializer.php create mode 100644 vendor/Gcp/google/gax/src/ServerStream.php create mode 100644 vendor/Gcp/google/gax/src/ServerStreamingCallInterface.php create mode 100644 vendor/Gcp/google/gax/src/ServiceAddressTrait.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingCall.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php create mode 100644 vendor/Gcp/google/gax/src/Transport/GrpcFallbackTransport.php create mode 100644 vendor/Gcp/google/gax/src/Transport/GrpcTransport.php create mode 100644 vendor/Gcp/google/gax/src/Transport/HttpUnaryTransportTrait.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Rest/JsonStreamDecoder.php create mode 100644 vendor/Gcp/google/gax/src/Transport/Rest/RestServerStreamingCall.php create mode 100644 vendor/Gcp/google/gax/src/Transport/RestTransport.php create mode 100644 vendor/Gcp/google/gax/src/Transport/TransportInterface.php create mode 100644 vendor/Gcp/google/gax/src/UriTrait.php create mode 100644 vendor/Gcp/google/gax/src/ValidationException.php create mode 100644 vendor/Gcp/google/gax/src/ValidationTrait.php create mode 100644 vendor/Gcp/google/gax/src/Version.php create mode 100644 vendor/Gcp/google/grpc-gcp/LICENSE create mode 100644 vendor/Gcp/google/grpc-gcp/README.md create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/bins/opt/grpc_php_plugin create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/cloudprober.cfg create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/codegen.sh create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/composer.json create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/grpc_gpc_prober/firestore_probes.php create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/grpc_gpc_prober/prober.php create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/grpc_gpc_prober/spanner_probes.php create mode 100644 vendor/Gcp/google/grpc-gcp/cloudprober/grpc_gpc_prober/stackdriver_util.php create mode 100644 vendor/Gcp/google/grpc-gcp/composer.json create mode 100644 vendor/Gcp/google/grpc-gcp/doc/gRPC-client-user-guide.md create mode 100644 vendor/Gcp/google/grpc-gcp/src/ChannelRef.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/Config.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/CreatedByDeserializeCheck.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GCPBidiStreamingCall.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GCPCallInvoker.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GCPClientStreamCall.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GCPServerStreamCall.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GCPUnaryCall.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GcpBaseCall.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/GcpExtensionChannel.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/GPBMetadata/GrpcGcp.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig_Command.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/Grpc/Gcp/ApiConfig.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/Grpc/Gcp/ChannelPoolConfig.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/generated/Grpc/Gcp/MethodConfig.php create mode 100644 vendor/Gcp/google/grpc-gcp/src/grpc_gcp.proto create mode 100644 vendor/Gcp/google/longrunning/CODE_OF_CONDUCT.md create mode 100644 vendor/Gcp/google/longrunning/CONTRIBUTING.md create mode 100644 vendor/Gcp/google/longrunning/LICENSE create mode 100644 vendor/Gcp/google/longrunning/README.md create mode 100644 vendor/Gcp/google/longrunning/SECURITY.md create mode 100644 vendor/Gcp/google/longrunning/VERSION create mode 100644 vendor/Gcp/google/longrunning/composer.json create mode 100644 vendor/Gcp/google/longrunning/metadata/Longrunning/Operations.php create mode 100644 vendor/Gcp/google/longrunning/metadata/README.md create mode 100644 vendor/Gcp/google/longrunning/src/ApiCore/LongRunning/Gapic/OperationsGapicClient.php create mode 100644 vendor/Gcp/google/longrunning/src/ApiCore/LongRunning/OperationsClient.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/CancelOperationRequest.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/Client/OperationsClient.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/DeleteOperationRequest.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/Gapic/OperationsGapicClient.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/GetOperationRequest.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/ListOperationsRequest.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/ListOperationsResponse.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/Operation.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/OperationInfo.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/OperationsClient.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/OperationsGrpcClient.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/WaitOperationRequest.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/resources/operations_client_config.json create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/resources/operations_descriptor_config.php create mode 100644 vendor/Gcp/google/longrunning/src/LongRunning/resources/operations_rest_client_config.php create mode 100644 vendor/Gcp/google/protobuf/LICENSE create mode 100644 vendor/Gcp/google/protobuf/README.md create mode 100644 vendor/Gcp/google/protobuf/composer.json create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Any.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Api.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Duration.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/FieldMask.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/GPBEmpty.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Internal/Descriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/SourceContext.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Struct.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Timestamp.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Type.php create mode 100644 vendor/Gcp/google/protobuf/src/GPBMetadata/Google/Protobuf/Wrappers.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Any.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Api.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/BoolValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/BytesValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Descriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/DescriptorPool.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/DoubleValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Duration.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Enum.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/EnumDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/EnumValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/EnumValueDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Field.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Field/Cardinality.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Field/Kind.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/FieldDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/FieldMask.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Field_Cardinality.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Field_Kind.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/FloatValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/GPBEmpty.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Int32Value.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Int64Value.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/AnyBase.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/CodedInputStream.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/CodedOutputStream.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/Descriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorPool.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ExtensionRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ReservedRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ExtensionRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ReservedRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumBuilderContext.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto/EnumReservedRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto_EnumReservedRange.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumValueDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/EnumValueOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/ExtensionRangeOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Label.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Type.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Label.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Type.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/CType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/JSType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_CType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_JSType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorSet.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileOptions/OptimizeMode.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/FileOptions_OptimizeMode.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBDecodeException.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBJsonWire.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBLabel.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBUtil.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBWire.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GPBWireType.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo/Annotation.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo_Annotation.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/GetPublicDescriptorTrait.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/HasPublicDescriptorTrait.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MapEntry.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MapField.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MapFieldIter.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/Message.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MessageBuilderContext.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MessageOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MethodDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MethodOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MethodOptions/IdempotencyLevel.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/MethodOptions_IdempotencyLevel.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/OneofField.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/OneofOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/RawInputStream.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/ServiceDescriptorProto.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/ServiceOptions.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo/Location.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo_Location.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/TimestampBase.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption/NamePart.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption_NamePart.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/ListValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Method.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Mixin.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/NullValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/OneofDescriptor.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Option.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/SourceContext.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/StringValue.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Struct.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Syntax.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Timestamp.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Type.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/UInt32Value.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/UInt64Value.php create mode 100644 vendor/Gcp/google/protobuf/src/Google/Protobuf/Value.php create mode 100644 vendor/Gcp/google/protobuf/src/phpdoc.dist.xml create mode 100644 vendor/Gcp/grpc/grpc/LICENSE create mode 100644 vendor/Gcp/grpc/grpc/MAINTAINERS.md create mode 100644 vendor/Gcp/grpc/grpc/README.md create mode 100644 vendor/Gcp/grpc/grpc/composer.json create mode 100644 vendor/Gcp/grpc/grpc/etc/roots.pem create mode 100644 vendor/Gcp/grpc/grpc/src/lib/AbstractCall.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/BaseStub.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/BidiStreamingCall.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/CallInvoker.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/ClientStreamingCall.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/DefaultCallInvoker.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/Interceptor.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/Internal/InterceptorChannel.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/MethodDescriptor.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/RpcServer.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/ServerCallReader.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/ServerCallWriter.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/ServerContext.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/ServerStreamingCall.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/Status.php create mode 100644 vendor/Gcp/grpc/grpc/src/lib/UnaryCall.php create mode 100644 vendor/Gcp/ramsey/collection/README.md create mode 100644 vendor/Gcp/ramsey/uuid/README.md create mode 100644 vendor/Gcp/symfony/polyfill-ctype/README.md create mode 100644 vendor/Gcp/symfony/polyfill-php80/README.md create mode 100644 vendor/Gcp/symfony/polyfill-php81/README.md create mode 100644 vendor/Gcp/symfony/polyfill-php81/Resources/stubs/CURLStringFile.php diff --git a/README.md b/README.md index db77788d..fdc6c6b5 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@ **Contributors:** wpengine, deliciousbrains, ianmjones, eriktorsner, kevinwhoffman, tysonreeder, dalewilliams, lewisia32, mattshaw, aaemnnosttv, a5hleyrich, polevaultweb, bradt, joetan \ **Tags:** uploads, amazon, s3, amazon s3, digitalocean, digitalocean spaces, google cloud storage, gcs, mirror, admin, media, cdn, cloudfront \ **Requires at least:** 5.5 \ -**Tested up to:** 6.6 \ +**Tested up to:** 6.7 \ **Requires PHP:** 7.2 \ -**Stable tag:** 3.2.9 \ +**Stable tag:** 3.2.10 \ **License:** GPLv3 Copies files to Amazon S3, DigitalOcean Spaces or Google Cloud Storage as they are uploaded to the Media Library. Optionally configure Amazon CloudFront or another CDN for faster delivery. @@ -103,6 +103,13 @@ This version requires PHP 5.3.3+ and the Amazon Web Services plugin ## Changelog +### WP Offload Media Lite 3.2.10 - 2024-12-12 + +* New: DigitalOcean regions Toronto (TOR1) and London (LON1) are now selectable +* New: Google Cloud Storage regions Africa (Johannesburg), Dual-Region (Belgium/London), Dual-Region (London/Frankfurt) and Dual-Region (Frankfurt/Zürich) are now selectable +* New: Google Cloud Storage SDK has been updated to v1.39.0 (requires PHP 7.4+) +* Bug fix: Speed of adding new media is no longer affected by the number of records in the postmeta table + ### WP Offload Media Lite 3.2.9 - 2024-10-04 * Security: The plugin now uses its own update mechanism from WP Engine servers diff --git a/classes/amazon-s3-and-cloudfront.php b/classes/amazon-s3-and-cloudfront.php index d26ba5f4..4351b5f9 100644 --- a/classes/amazon-s3-and-cloudfront.php +++ b/classes/amazon-s3-and-cloudfront.php @@ -1554,16 +1554,14 @@ function does_file_exist( $filename, $time ) { } /** - * Does file exist local + * Does file exist locally. * * @param string $filename * @param string $time * * @return bool */ - function does_file_exist_local( $filename, $time ) { - global $wpdb; - + public function does_file_exist_local( $filename, $time ) { $path = wp_upload_dir( $time ); $path = ltrim( $path['subdir'], '/' ); @@ -1572,18 +1570,6 @@ function does_file_exist_local( $filename, $time ) { } $file = $path . $filename; - // WordPress doesn't check its own basic record, so we will. - $sql = $wpdb->prepare( " - SELECT COUNT(*) - FROM $wpdb->postmeta - WHERE meta_key = %s - AND meta_value = %s - ", '_wp_attached_file', $file ); - - if ( (bool) $wpdb->get_var( $sql ) ) { - return true; - } - // Check our records of local source path as it also covers original_image. if ( ! empty( Media_Library_Item::get_by_source_path( array( $file ), array(), true, true ) ) ) { return true; diff --git a/classes/as3cf-plugin-updater.php b/classes/as3cf-plugin-updater.php index e2e2d7a0..55de397d 100644 --- a/classes/as3cf-plugin-updater.php +++ b/classes/as3cf-plugin-updater.php @@ -1,6 +1,7 @@ fetch_plugin_info(); if ( false === $result ) { - return $transient; + return $transient_value; } + $res = $this->parse_plugin_info( $result ); + if ( version_compare( $this->properties['plugin_version'], $result->version, '<' ) ) { - $res = $this->parse_plugin_info( $result ); - $transient->response[ $res->plugin ] = $res; - $transient->checked[ $res->plugin ] = $result->version; + $transient_value->response[ $res->plugin ] = $res; + $transient_value->checked[ $res->plugin ] = $result->version; + } else { + $transient_value->no_update[ $res->plugin ] = $res; } - return $transient; + return $transient_value; } /** @@ -213,7 +224,6 @@ private function fetch_plugin_info() { * @return stdClass */ private function parse_plugin_info( $response ) { - global $wp_version; $res = new stdClass(); diff --git a/classes/providers/storage/digitalocean-provider.php b/classes/providers/storage/digitalocean-provider.php index 9a992d63..921c8ecb 100644 --- a/classes/providers/storage/digitalocean-provider.php +++ b/classes/providers/storage/digitalocean-provider.php @@ -95,6 +95,8 @@ class DigitalOcean_Provider extends AWS_Provider { 'fra1' => 'Frankfurt', 'blr1' => 'Bangalore', 'syd1' => 'Sydney', + 'lon1' => 'London', + 'tor1' => 'Toronto', ); /** diff --git a/classes/providers/storage/gcp-provider.php b/classes/providers/storage/gcp-provider.php index 53146b1d..b8e3b9ce 100644 --- a/classes/providers/storage/gcp-provider.php +++ b/classes/providers/storage/gcp-provider.php @@ -132,8 +132,12 @@ class GCP_Provider extends Storage_Provider { 'me-west1' => 'Middle East (Tel Aviv)', 'australia-southeast1' => 'Australia (Sydney)', 'australia-southeast2' => 'Australia (Melbourne)', + 'africa-south1' => 'Africa (Johannesburg)', 'asia1' => 'Dual-Region (Tokyo/Osaka)', 'eur4' => 'Dual-Region (Finland/Netherlands)', + 'eur5' => 'Dual-Region (Belgium/London)', + 'eur7' => 'Dual-Region (London/Frankfurt)', + 'eur8' => 'Dual-Region (Frankfurt/Zürich)', 'nam4' => 'Dual-Region (Iowa/South Carolina)', ); @@ -528,7 +532,10 @@ public function list_keys( array $locations ) { $keys = array(); $results = array_map( function ( $location ) { - return $this->storage->bucket( $location['Bucket'] )->objects( array( 'prefix' => $location['Prefix'], 'fields' => 'items/name' ) ); + return $this->storage->bucket( $location['Bucket'] )->objects( array( + 'prefix' => $location['Prefix'], + 'fields' => 'items/name', + ) ); }, $locations ); foreach ( $results as $attachment_id => $objects ) { @@ -672,7 +679,12 @@ protected function url_prefix( $region = '', $expires = null ) { * @return string */ protected function url_domain( $domain, $bucket, $region = '', $expires = null, $args = array() ) { - if ( apply_filters( 'as3cf_' . static::get_provider_key_name() . '_' . static::get_service_key_name() . '_bucket_in_path', false !== strpos( $bucket, '.' ) ) ) { + if ( + apply_filters( + 'as3cf_' . static::get_provider_key_name() . '_' . static::get_service_key_name() . '_bucket_in_path', + false !== strpos( $bucket, '.' ) + ) + ) { $domain = $domain . '/' . $bucket; } else { // TODO: Is this mode allowed for GCS native URLs? @@ -691,7 +703,11 @@ protected function url_domain( $domain, $bucket, $region = '', $expires = null, * * @return string */ - protected function get_console_url_suffix_param( string $bucket = '', string $prefix = '', string $region = '' ): string { + protected function get_console_url_suffix_param( + string $bucket = '', + string $prefix = '', + string $region = '' + ): string { if ( ! empty( $this->get_project_id() ) ) { return '?project=' . $this->get_project_id(); } @@ -753,7 +769,10 @@ protected function get_key_file_path_contents( string $path ) { $content = json_decode( file_get_contents( $path ), true ); if ( empty( $content ) ) { - $this->as3cf->notices->add_notice( __( 'Media cannot be offloaded due to invalid JSON in the key file.', 'amazon-s3-and-cloudfront' ), $notice_args ); + $this->as3cf->notices->add_notice( + __( 'Media cannot be offloaded due to invalid JSON in the key file.', 'amazon-s3-and-cloudfront' ), + $notice_args + ); return false; } @@ -783,7 +802,10 @@ public function validate_key_file_content( $key_file_content ): bool { if ( ! isset( $key_file_content['project_id'] ) ) { $this->as3cf->notices->add_notice( sprintf( - __( 'Media cannot be offloaded due to a missing project_id field which may be the result of an old or obsolete key file. Create a new key file', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded due to a missing project_id field which may be the result of an old or obsolete key file. Create a new key file', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ), $notice_args @@ -795,7 +817,10 @@ public function validate_key_file_content( $key_file_content ): bool { if ( ! isset( $key_file_content['private_key'] ) ) { $this->as3cf->notices->add_notice( sprintf( - __( 'Media cannot be offloaded due to a missing private_key field in the key file. Create a new key file', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded due to a missing private_key field in the key file. Create a new key file', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ), $notice_args @@ -807,7 +832,10 @@ public function validate_key_file_content( $key_file_content ): bool { if ( ! isset( $key_file_content['type'] ) ) { $this->as3cf->notices->add_notice( sprintf( - __( 'Media cannot be offloaded due to a missing type field in the key file. Create a new key file', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded due to a missing type field in the key file. Create a new key file', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ), $notice_args @@ -819,7 +847,10 @@ public function validate_key_file_content( $key_file_content ): bool { if ( ! isset( $key_file_content['client_email'] ) ) { $this->as3cf->notices->add_notice( sprintf( - __( 'Media cannot be offloaded due to a missing client_email field in the key file. Create a new key file', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded due to a missing client_email field in the key file. Create a new key file', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ), $notice_args @@ -842,7 +873,10 @@ public function validate_key_file_content( $key_file_content ): bool { public function prepare_bucket_error( WP_Error $object, bool $single = true ): string { if ( false !== strpos( $object->get_error_message(), "OpenSSL unable to sign" ) ) { return sprintf( - __( 'Media cannot be offloaded due to an invalid OpenSSL Private Key. Update the key file', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded due to an invalid OpenSSL Private Key. Update the key file', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ); } @@ -852,14 +886,20 @@ public function prepare_bucket_error( WP_Error $object, bool $single = true ): s if ( ! is_null( $message ) ) { if ( isset( $message->error ) && 'invalid_grant' === $message->error ) { return sprintf( - __( 'Media cannot be offloaded using the provided service account. Read more', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded using the provided service account. Read more', + 'amazon-s3-and-cloudfront' + ), static::get_provider_service_quick_start_url() . '#service-account-key-file' ); } if ( isset( $message->error->code ) && 404 === $message->error->code ) { return sprintf( - __( 'Media cannot be offloaded because a bucket with the configured name does not exist. Enter a different bucket', 'amazon-s3-and-cloudfront' ), + __( + 'Media cannot be offloaded because a bucket with the configured name does not exist. Enter a different bucket', + 'amazon-s3-and-cloudfront' + ), '#/storage/bucket' ); } diff --git a/languages/amazon-s3-and-cloudfront-en.pot b/languages/amazon-s3-and-cloudfront-en.pot index 3581ce20..18d5d9de 100644 --- a/languages/amazon-s3-and-cloudfront-en.pot +++ b/languages/amazon-s3-and-cloudfront-en.pot @@ -2,14 +2,14 @@ # # This file is distributed under the same license as the amazon-s3-and-cloudfront package. msgid "" msgstr "" -"Project-Id-Version: amazon-s3-and-cloudfront 3.2.9\n" +"Project-Id-Version: amazon-s3-and-cloudfront 3.2.10\n" "Report-Msgid-Bugs-To: mailto:nom@deliciousbrains.com\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"POT-Creation-Date: 2024-10-04T13:53:28+00:00\n" +"POT-Creation-Date: 2024-12-12T11:41:02+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "X-Generator: WP-CLI 2.11.0\n" "X-Domain: amazon-s3-and-cloudfront\n" @@ -46,7 +46,7 @@ msgstr "" #: classes/amazon-s3-and-cloudfront.php:570 #: classes/amazon-s3-and-cloudfront.php:587 -#: classes/amazon-s3-and-cloudfront.php:4638 +#: classes/amazon-s3-and-cloudfront.php:4624 msgid "Unknown" msgstr "" @@ -90,886 +90,886 @@ msgctxt "URL part" msgid "Filename" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:1784 +#: classes/amazon-s3-and-cloudfront.php:1770 msgid "This action can only be performed through an admin screen." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:1786 +#: classes/amazon-s3-and-cloudfront.php:1772 msgid "Cheatin’ eh?" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:1788 +#: classes/amazon-s3-and-cloudfront.php:1774 msgid "You do not have sufficient permissions to access this page." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2015 +#: classes/amazon-s3-and-cloudfront.php:2001 msgid "Error Getting Bucket Region — There was an error attempting to get the region of the bucket %1$s: %2$s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2060 +#: classes/amazon-s3-and-cloudfront.php:2046 msgid "Error Getting Buckets — %s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2120 +#: classes/amazon-s3-and-cloudfront.php:2106 msgid "This is a test file to check if the user has write permission to the bucket. Delete me if found." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2132 +#: classes/amazon-s3-and-cloudfront.php:2118 msgid "There was an error attempting to check the permissions of the bucket %s: %s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2256 +#: classes/amazon-s3-and-cloudfront.php:2242 msgid "Warning — Some plugins depend on the file being present on the local server and may not work when the file is removed. %s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2258 +#: classes/amazon-s3-and-cloudfront.php:2244 msgid "If you have a backup system in place (as you should) that backs up your site files, media, and database, your media will no longer be backed up as it will no longer be present on the filesystem." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2263 +#: classes/amazon-s3-and-cloudfront.php:2249 msgid "Error creating bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2264 +#: classes/amazon-s3-and-cloudfront.php:2250 msgid "Bucket name not entered." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2265 +#: classes/amazon-s3-and-cloudfront.php:2251 msgid "Bucket name too short." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2266 +#: classes/amazon-s3-and-cloudfront.php:2252 msgid "Bucket name too long." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2267 +#: classes/amazon-s3-and-cloudfront.php:2253 msgid "Invalid character. Bucket names can contain lowercase letters, numbers, periods and hyphens." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2268 +#: classes/amazon-s3-and-cloudfront.php:2254 msgid "Invalid character. Bucket names can contain lowercase letters, numbers, periods and hyphens. Legacy buckets may also include uppercase letters and underscores." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2269 +#: classes/amazon-s3-and-cloudfront.php:2255 msgid "No bucket selected." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2270 +#: classes/amazon-s3-and-cloudfront.php:2256 msgid "Invalid region defined in wp-config." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2271 +#: classes/amazon-s3-and-cloudfront.php:2257 msgid "Error saving bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2272 +#: classes/amazon-s3-and-cloudfront.php:2258 msgid "Error fetching buckets" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2273 +#: classes/amazon-s3-and-cloudfront.php:2259 msgid "Error getting URL preview: " msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2274 +#: classes/amazon-s3-and-cloudfront.php:2260 msgid "The changes you made will be lost if you navigate away from this page" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2275 +#: classes/amazon-s3-and-cloudfront.php:2261 msgid "Error From Server" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2276 +#: classes/amazon-s3-and-cloudfront.php:2262 msgid "Getting diagnostic info…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2277 +#: classes/amazon-s3-and-cloudfront.php:2263 msgid "Error getting diagnostic info: " msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2278 +#: classes/amazon-s3-and-cloudfront.php:2264 msgctxt "placeholder for hidden access key, 39 char max" msgid "-- not shown --" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2279 +#: classes/amazon-s3-and-cloudfront.php:2265 msgid "Defined in wp-config.php" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2280 +#: classes/amazon-s3-and-cloudfront.php:2266 msgid "Settings locked" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2282 +#: classes/amazon-s3-and-cloudfront.php:2268 msgid "Settings Locked — Settings have been changed by someone else, please refresh the page." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2285 +#: classes/amazon-s3-and-cloudfront.php:2271 msgid "Get up to 40% off" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2287 +#: classes/amazon-s3-and-cloudfront.php:2273 msgctxt "Change link title" msgid "Change" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2288 +#: classes/amazon-s3-and-cloudfront.php:2274 msgctxt "Edit button text" msgid "Edit" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2289 +#: classes/amazon-s3-and-cloudfront.php:2275 msgctxt "Toggle switch fallback text" msgid "Toggle" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2290 +#: classes/amazon-s3-and-cloudfront.php:2276 msgctxt "Back button text" msgid "Back" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2291 +#: classes/amazon-s3-and-cloudfront.php:2277 msgctxt "Skip button text" msgid "Skip" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2292 +#: classes/amazon-s3-and-cloudfront.php:2278 msgctxt "Next button text" msgid "Next" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2293 +#: classes/amazon-s3-and-cloudfront.php:2279 msgctxt "Yes button text" msgid "Yes" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2294 +#: classes/amazon-s3-and-cloudfront.php:2280 msgctxt "No button text" msgid "No" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2295 -#: classes/amazon-s3-and-cloudfront.php:4190 +#: classes/amazon-s3-and-cloudfront.php:2281 +#: classes/amazon-s3-and-cloudfront.php:4176 msgctxt "Help icon alt text" msgid "Click to view help doc on our site" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2296 +#: classes/amazon-s3-and-cloudfront.php:2282 msgctxt "Selected option icon alt text" msgid "Option selected" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2297 +#: classes/amazon-s3-and-cloudfront.php:2283 msgctxt "Tab title" msgid "Media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2298 +#: classes/amazon-s3-and-cloudfront.php:2284 msgctxt "Tab title" msgid "Assets" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2299 +#: classes/amazon-s3-and-cloudfront.php:2285 msgctxt "Tab title" msgid "Tools" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2300 +#: classes/amazon-s3-and-cloudfront.php:2286 msgctxt "Tab title" msgid "Support" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2301 +#: classes/amazon-s3-and-cloudfront.php:2287 msgid "Loading…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2302 +#: classes/amazon-s3-and-cloudfront.php:2288 msgid "Nothing Found" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2303 +#: classes/amazon-s3-and-cloudfront.php:2289 msgctxt "Button text" msgid "Save Changes" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2304 +#: classes/amazon-s3-and-cloudfront.php:2290 msgctxt "Button text" msgid "Cancel" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2305 +#: classes/amazon-s3-and-cloudfront.php:2291 msgctxt "Button text" msgid "Save & Continue" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2307 +#: classes/amazon-s3-and-cloudfront.php:2293 msgctxt "Label in nav bar status indicator" msgid "Offloaded" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2308 +#: classes/amazon-s3-and-cloudfront.php:2294 msgctxt "Button title" msgid "Show Details" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2309 +#: classes/amazon-s3-and-cloudfront.php:2295 msgctxt "Button title" msgid "Hide Details" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2310 +#: classes/amazon-s3-and-cloudfront.php:2296 msgctxt "Panel title" msgid "Offload Status" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2311 +#: classes/amazon-s3-and-cloudfront.php:2297 msgctxt "Button title" msgid "Refresh" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2312 +#: classes/amazon-s3-and-cloudfront.php:2298 msgctxt "Button description" msgid "Force refresh all media counts, may be resource intensive." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2313 +#: classes/amazon-s3-and-cloudfront.php:2299 msgctxt "Column title" msgid "Source" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2314 +#: classes/amazon-s3-and-cloudfront.php:2300 msgctxt "Column title" msgid "Offloaded" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2315 +#: classes/amazon-s3-and-cloudfront.php:2301 msgctxt "Column title" msgid "Not Offloaded" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2316 +#: classes/amazon-s3-and-cloudfront.php:2302 msgctxt "Row title" msgid "Total" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2317 -#: classes/amazon-s3-and-cloudfront.php:2444 -#: classes/amazon-s3-and-cloudfront.php:2460 +#: classes/amazon-s3-and-cloudfront.php:2303 +#: classes/amazon-s3-and-cloudfront.php:2430 +#: classes/amazon-s3-and-cloudfront.php:2446 msgctxt "Upsell call to action" msgid "Upgrade now" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2318 +#: classes/amazon-s3-and-cloudfront.php:2304 msgctxt "Status message" msgid "There are no media items" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2319 +#: classes/amazon-s3-and-cloudfront.php:2305 msgctxt "Status message" msgid "All media items have been offloaded" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2321 +#: classes/amazon-s3-and-cloudfront.php:2307 msgctxt "Section title" msgid "URL Preview" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2322 +#: classes/amazon-s3-and-cloudfront.php:2308 msgctxt "Description of URL Preview" msgid "When a media URL is rewritten, it will use the following structure based on the current Storage and Delivery settings:" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2324 +#: classes/amazon-s3-and-cloudfront.php:2310 msgctxt "Section title" msgid "Storage Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2325 +#: classes/amazon-s3-and-cloudfront.php:2311 msgctxt "Edit storage provider button tooltip" msgid "Change cloud storage provider or location" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2326 +#: classes/amazon-s3-and-cloudfront.php:2312 msgctxt "Provider console link alt text" msgid "View in provider's console" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2328 +#: classes/amazon-s3-and-cloudfront.php:2314 msgctxt "Section title" msgid "Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2329 +#: classes/amazon-s3-and-cloudfront.php:2315 msgctxt "Change link description" msgid "Change bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2330 +#: classes/amazon-s3-and-cloudfront.php:2316 msgid "Block All Public Access Enabled" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2331 +#: classes/amazon-s3-and-cloudfront.php:2317 msgid "Public access to bucket has been blocked at either account or bucket level." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2332 +#: classes/amazon-s3-and-cloudfront.php:2318 msgid "Block All Public Access Disabled" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2333 +#: classes/amazon-s3-and-cloudfront.php:2319 msgid "Public access to bucket has not been blocked at either account or bucket level." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2334 +#: classes/amazon-s3-and-cloudfront.php:2320 msgid "Block All Public Access Status Unknown" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2335 +#: classes/amazon-s3-and-cloudfront.php:2321 msgid "Public access to bucket status unknown, please grant IAM User the s3:GetBucketPublicAccessBlock permission." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2336 +#: classes/amazon-s3-and-cloudfront.php:2322 msgid "Object Ownership Enforced" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2337 +#: classes/amazon-s3-and-cloudfront.php:2323 msgid "Object Ownership has been enforced on the bucket." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2338 +#: classes/amazon-s3-and-cloudfront.php:2324 msgid "Object Ownership Not Enforced" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2339 +#: classes/amazon-s3-and-cloudfront.php:2325 msgid "Object Ownership has not been enforced on the bucket." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2340 +#: classes/amazon-s3-and-cloudfront.php:2326 msgid "Object Ownership Status Unknown" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2341 +#: classes/amazon-s3-and-cloudfront.php:2327 msgid "Object Ownership status in the bucket unknown, please grant IAM User the s3:GetBucketPublicAccessBlock permission." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2342 +#: classes/amazon-s3-and-cloudfront.php:2328 msgctxt "Used when region, provider etc is not in reference data" msgid "Unknown" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2344 +#: classes/amazon-s3-and-cloudfront.php:2330 msgctxt "Section title" msgid "Storage Settings" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2345 +#: classes/amazon-s3-and-cloudfront.php:2331 msgctxt "Setting title" msgid "Offload Media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2346 +#: classes/amazon-s3-and-cloudfront.php:2332 msgctxt "Setting description" msgid "Copies media files to the storage provider after being uploaded, edited, or optimized." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2347 +#: classes/amazon-s3-and-cloudfront.php:2333 msgctxt "Setting title" msgid "Add Prefix to Bucket Path" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2348 +#: classes/amazon-s3-and-cloudfront.php:2334 msgctxt "Setting description" msgid "Groups media from this site together by using a common prefix in the bucket path of offloaded media files." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2349 +#: classes/amazon-s3-and-cloudfront.php:2335 msgctxt "Setting title" msgid "Add Year & Month to Bucket Path" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2350 +#: classes/amazon-s3-and-cloudfront.php:2336 msgctxt "Setting description" msgid "Provides another level of organization within the bucket by including the year & month in which the file was uploaded to the site." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2351 +#: classes/amazon-s3-and-cloudfront.php:2337 msgctxt "Setting title" msgid "Add Object Version to Bucket Path" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2352 +#: classes/amazon-s3-and-cloudfront.php:2338 msgctxt "Setting description" msgid "Ensures the latest version of a media item gets delivered by adding a unique timestamp to the bucket path." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2353 +#: classes/amazon-s3-and-cloudfront.php:2339 msgctxt "Setting title" msgid "Remove Local Media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2354 +#: classes/amazon-s3-and-cloudfront.php:2340 msgctxt "Setting description" msgid "Frees up storage space by deleting local media files after they have been offloaded." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2356 +#: classes/amazon-s3-and-cloudfront.php:2342 msgctxt "warning heading" msgid "Broken URLs" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2357 +#: classes/amazon-s3-and-cloudfront.php:2343 msgid "There will be broken URLs for files that don't exist locally. You can fix this by enabling Deliver Offloaded Media to use the offloaded media." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2359 +#: classes/amazon-s3-and-cloudfront.php:2345 msgctxt "Section title" msgid "Delivery Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2360 +#: classes/amazon-s3-and-cloudfront.php:2346 msgctxt "Edit delivery provider button tooltip" msgid "Change delivery provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2362 +#: classes/amazon-s3-and-cloudfront.php:2348 msgctxt "Section title" msgid "Delivery Settings" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2363 +#: classes/amazon-s3-and-cloudfront.php:2349 msgctxt "Setting title" msgid "Deliver Offloaded Media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2364 +#: classes/amazon-s3-and-cloudfront.php:2350 msgctxt "Setting title" msgid "Use Custom Domain Name (CNAME)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2365 +#: classes/amazon-s3-and-cloudfront.php:2351 #: classes/settings/domain-check.php:72 msgid "Domain cannot be blank." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2366 +#: classes/amazon-s3-and-cloudfront.php:2352 #: classes/settings/domain-check.php:78 msgid "Domain can only contain letters, numbers, hyphens (-), and periods (.)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2367 +#: classes/amazon-s3-and-cloudfront.php:2353 msgid "Domain too short." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2368 +#: classes/amazon-s3-and-cloudfront.php:2354 msgctxt "Setting title" msgid "Force HTTPS" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2369 +#: classes/amazon-s3-and-cloudfront.php:2355 msgctxt "Setting description" msgid "Uses HTTPS for every offloaded media item instead of using the scheme of the current page." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2371 +#: classes/amazon-s3-and-cloudfront.php:2357 msgctxt "Check again button title" msgid "Check again" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2372 +#: classes/amazon-s3-and-cloudfront.php:2358 msgctxt "Check again button title while checking " msgid "Checking…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2373 +#: classes/amazon-s3-and-cloudfront.php:2359 msgctxt "Check again button description " msgid "Check settings again, may be resource intensive." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2375 +#: classes/amazon-s3-and-cloudfront.php:2361 msgctxt "Page title" msgid "Storage" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2376 +#: classes/amazon-s3-and-cloudfront.php:2362 msgctxt "Tab title" msgid "Storage Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2377 +#: classes/amazon-s3-and-cloudfront.php:2363 msgctxt "Tab title" msgid "Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2378 +#: classes/amazon-s3-and-cloudfront.php:2364 msgctxt "Tab title" msgid "Security" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2379 +#: classes/amazon-s3-and-cloudfront.php:2365 msgctxt "Tab title" msgid "Copy Files" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2381 +#: classes/amazon-s3-and-cloudfront.php:2367 msgctxt "Section title" msgid "1. Select Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2382 +#: classes/amazon-s3-and-cloudfront.php:2368 msgctxt "Section title" msgid "2. Connection Method" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2384 -#: classes/amazon-s3-and-cloudfront.php:2386 +#: classes/amazon-s3-and-cloudfront.php:2370 +#: classes/amazon-s3-and-cloudfront.php:2372 msgctxt "Section title" msgid "3. Add Credentials" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2385 +#: classes/amazon-s3-and-cloudfront.php:2371 msgctxt "Section title" msgid "3. Save Setting" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2388 +#: classes/amazon-s3-and-cloudfront.php:2374 msgid "Define access keys in wp-config.php" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2389 +#: classes/amazon-s3-and-cloudfront.php:2375 msgid "Define key file path in wp-config.php" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2390 +#: classes/amazon-s3-and-cloudfront.php:2376 msgid "I understand the risks but I'd like to store access keys in the database anyway (not recommended)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2391 +#: classes/amazon-s3-and-cloudfront.php:2377 msgctxt "Setting title" msgid "Access Key ID" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2392 +#: classes/amazon-s3-and-cloudfront.php:2378 msgctxt "Setting title" msgid "Secret Access Key" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2393 +#: classes/amazon-s3-and-cloudfront.php:2379 msgid "I understand the risks but I'd like to store the key file's contents in the database anyway (not recommended)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2394 +#: classes/amazon-s3-and-cloudfront.php:2380 msgctxt "Setting title" msgid "Key File" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2396 +#: classes/amazon-s3-and-cloudfront.php:2382 msgctxt "Section title" msgid "1. New or Existing Bucket?" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2397 +#: classes/amazon-s3-and-cloudfront.php:2383 msgctxt "Option title" msgid "Use Existing Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2398 +#: classes/amazon-s3-and-cloudfront.php:2384 msgctxt "Option title" msgid "Create New Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2399 +#: classes/amazon-s3-and-cloudfront.php:2385 msgctxt "Section title" msgid "2. Select Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2400 +#: classes/amazon-s3-and-cloudfront.php:2386 msgctxt "Section title" msgid "2. Bucket Details" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2401 +#: classes/amazon-s3-and-cloudfront.php:2387 msgctxt "Option title" msgid "Enter bucket name" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2402 +#: classes/amazon-s3-and-cloudfront.php:2388 msgctxt "Option title" msgid "Browse existing buckets" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2403 +#: classes/amazon-s3-and-cloudfront.php:2389 msgctxt "Setting title" msgid "Bucket Name" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2404 +#: classes/amazon-s3-and-cloudfront.php:2390 msgctxt "Bucket icon alt text" msgid "Bucket icon" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2405 +#: classes/amazon-s3-and-cloudfront.php:2391 msgctxt "Setting title" msgid "Region" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2406 +#: classes/amazon-s3-and-cloudfront.php:2392 msgctxt "Placeholder" msgid "Enter bucket name…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2407 +#: classes/amazon-s3-and-cloudfront.php:2393 msgctxt "Button text" msgid "Save Bucket Settings" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2408 +#: classes/amazon-s3-and-cloudfront.php:2394 msgctxt "Button text" msgid "Save Selected Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2409 +#: classes/amazon-s3-and-cloudfront.php:2395 msgctxt "Button text" msgid "Create New Bucket" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2411 +#: classes/amazon-s3-and-cloudfront.php:2397 msgctxt "Section title" msgid "Block All Public Access" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2412 +#: classes/amazon-s3-and-cloudfront.php:2398 msgid "Block All Public Access is currently disabled" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2413 +#: classes/amazon-s3-and-cloudfront.php:2399 msgid "Block All Public Access is currently enabled" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2414 +#: classes/amazon-s3-and-cloudfront.php:2400 msgid "Warning: Block All Public Access is currently enabled" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2415 +#: classes/amazon-s3-and-cloudfront.php:2401 msgctxt "Section title" msgid "Object Ownership" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2416 +#: classes/amazon-s3-and-cloudfront.php:2402 msgid "Object Ownership is currently not enforced" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2417 +#: classes/amazon-s3-and-cloudfront.php:2403 msgid "Object Ownership is currently enforced" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2418 +#: classes/amazon-s3-and-cloudfront.php:2404 msgid "Warning: Object Ownership is currently enforced" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2419 +#: classes/amazon-s3-and-cloudfront.php:2405 msgctxt "Button text" msgid "Update Bucket Security" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2420 +#: classes/amazon-s3-and-cloudfront.php:2406 msgctxt "Button text" msgid "Keep Bucket Security As Is" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2422 +#: classes/amazon-s3-and-cloudfront.php:2408 msgctxt "Page title" msgid "Delivery" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2423 +#: classes/amazon-s3-and-cloudfront.php:2409 msgctxt "Section title" msgid "1. Select Delivery Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2424 +#: classes/amazon-s3-and-cloudfront.php:2410 msgctxt "Section title" msgid "2. Use Another CDN" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2425 +#: classes/amazon-s3-and-cloudfront.php:2411 msgctxt "Placeholder" msgid "Enter CDN name…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2426 +#: classes/amazon-s3-and-cloudfront.php:2412 msgid "Quick Start Guide" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2427 +#: classes/amazon-s3-and-cloudfront.php:2413 msgctxt "Help icon tooltip" msgid "View quick start guide" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2428 +#: classes/amazon-s3-and-cloudfront.php:2414 msgctxt "Button text" msgid "Save Delivery Provider" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2429 +#: classes/amazon-s3-and-cloudfront.php:2415 msgid "No changes to save" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2430 +#: classes/amazon-s3-and-cloudfront.php:2416 msgid "A CDN name has not been entered." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2431 +#: classes/amazon-s3-and-cloudfront.php:2417 msgid "CDN name too short." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2433 +#: classes/amazon-s3-and-cloudfront.php:2419 msgctxt "Page title" msgid "Asset Settings" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2434 +#: classes/amazon-s3-and-cloudfront.php:2420 msgid "Media Files Are Only the Beginning…" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2436 +#: classes/amazon-s3-and-cloudfront.php:2422 msgid "Assets such as scripts, styles, and fonts can also be served from a Content Delivery Network (CDN) to improve website load times. Upgrade to a qualifying license of WP Offload Media to speed up the delivery of these critical assets today." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2440 +#: classes/amazon-s3-and-cloudfront.php:2426 msgctxt "Assets uppsell benefit" msgid "Cascading style sheets (CSS)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2441 +#: classes/amazon-s3-and-cloudfront.php:2427 msgctxt "Assets uppsell benefit" msgid "JavaScript (JS)" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2442 +#: classes/amazon-s3-and-cloudfront.php:2428 msgctxt "Assets uppsell benefit" msgid "Fonts" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2445 +#: classes/amazon-s3-and-cloudfront.php:2431 msgid "Already have a qualifying license? Enter License Key" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2448 +#: classes/amazon-s3-and-cloudfront.php:2434 msgctxt "Page title" msgid "Bulk Management Tools" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2449 +#: classes/amazon-s3-and-cloudfront.php:2435 msgid "Easily Manage Local and Offloaded Media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2451 +#: classes/amazon-s3-and-cloudfront.php:2437 msgid "Whether you need to offload a library of existing media items or return offloaded files back to your local server, there's a tool for every job. Upgrade to any license of WP Offload Media to take advantage of these powerful tools today." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2455 +#: classes/amazon-s3-and-cloudfront.php:2441 msgctxt "Assets uppsell benefit" msgid "Offload remaining media" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2456 +#: classes/amazon-s3-and-cloudfront.php:2442 msgctxt "Assets uppsell benefit" msgid "Download files from bucket to server" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2463 +#: classes/amazon-s3-and-cloudfront.php:2449 msgid "As this is a free plugin, we do not provide support." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2465 +#: classes/amazon-s3-and-cloudfront.php:2451 msgid "You may ask the WordPress community for help by posting to the WordPress.org support forum. Response time can range from a few days to a few weeks and will likely be from a non-developer." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2469 +#: classes/amazon-s3-and-cloudfront.php:2455 msgid "If you want a timely response via email from a developer who works on this plugin, upgrade and send us an email." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2473 +#: classes/amazon-s3-and-cloudfront.php:2459 msgid "If you've found a bug, please submit an issue on GitHub." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2476 +#: classes/amazon-s3-and-cloudfront.php:2462 msgctxt "Section title" msgid "Diagnostic Info" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2477 +#: classes/amazon-s3-and-cloudfront.php:2463 msgctxt "Download diagnostics button text" msgid "Download" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2808 +#: classes/amazon-s3-and-cloudfront.php:2794 msgctxt "Show the media library tab" msgid "Media Library" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2809 +#: classes/amazon-s3-and-cloudfront.php:2795 msgctxt "Show the addons tab" msgid "Addons" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2810 +#: classes/amazon-s3-and-cloudfront.php:2796 msgctxt "Show the support tab" msgid "Support" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2940 +#: classes/amazon-s3-and-cloudfront.php:2926 msgid "The file %s has been given %s permissions in the bucket." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2959 +#: classes/amazon-s3-and-cloudfront.php:2945 msgid "WP Offload Media Requirement Missing — Looks like you don't have an image manipulation library installed on this server and configured with PHP. You may run into trouble if you try to edit images. Please setup GD or ImageMagick." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:2983 +#: classes/amazon-s3-and-cloudfront.php:2969 msgid "Missing Table — One or more required database tables are missing, please check the Diagnostic Info in the Support tab for details. %s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4038 +#: classes/amazon-s3-and-cloudfront.php:4024 msgid "WP Offload Media Activation" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4039 +#: classes/amazon-s3-and-cloudfront.php:4025 msgid "WP Offload Media Lite and WP Offload Media cannot both be active. We've automatically deactivated WP Offload Media Lite." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4041 +#: classes/amazon-s3-and-cloudfront.php:4027 msgid "WP Offload Media Lite Activation" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4042 +#: classes/amazon-s3-and-cloudfront.php:4028 msgid "WP Offload Media Lite and WP Offload Media cannot both be active. We've automatically deactivated WP Offload Media." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4107 +#: classes/amazon-s3-and-cloudfront.php:4093 msgid "More info" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4251 +#: classes/amazon-s3-and-cloudfront.php:4237 msgid "WP Offload Media Feature Removed" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4252 +#: classes/amazon-s3-and-cloudfront.php:4238 msgid "You had the \"Always non-SSL\" option selected in your settings, but we've removed this option in version 1.3. We'll now use HTTPS when the request is HTTPS and regular HTTP when the request is HTTP. This should work fine for your site, but please take a poke around and make sure things are working ok. See %s for more details on why we did this and how you can revert back to the old behavior." msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4444 +#: classes/amazon-s3-and-cloudfront.php:4430 msgid "Amazon Web Services Plugin No Longer Required — As of version 1.6 of WP Offload Media, the Amazon Web Services plugin is no longer required. We have removed the dependency by bundling a small portion of the AWS SDK into WP Offload Media. As long as none of your other active plugins or themes depend on the Amazon Web Services plugin, it should be safe to deactivate and delete it. %2$s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4476 +#: classes/amazon-s3-and-cloudfront.php:4462 msgid "WP Offload Media Settings Moved — You now define your AWS keys for WP Offload Media in the new Settings tab. Saving settings in the form below will have no effect on WP Offload Media. %2$s" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4789 +#: classes/amazon-s3-and-cloudfront.php:4775 msgid "Upgrade to offload %d remaining media item" msgstr "" -#: classes/amazon-s3-and-cloudfront.php:4791 +#: classes/amazon-s3-and-cloudfront.php:4777 msgid "Upgrade to offload %d remaining media items" msgstr "" @@ -1431,7 +1431,7 @@ msgid "Offloaded media URLs may be broken due to an invalid delivery domain. %1$ msgstr "" #: classes/providers/delivery/digitalocean-spaces-cdn.php:100 -#: classes/providers/storage/digitalocean-provider.php:245 +#: classes/providers/storage/digitalocean-provider.php:247 msgctxt "Provider console link text" msgid "Control Panel" msgstr "" @@ -1499,7 +1499,7 @@ msgid "The bucket name already exists in another account. Please enter a differe msgstr "" #: classes/providers/storage/aws-provider.php:324 -#: classes/providers/storage/gcp-provider.php:862 +#: classes/providers/storage/gcp-provider.php:899 msgid "Media cannot be offloaded because a bucket with the configured name does not exist. Enter a different bucket" msgstr "" @@ -1551,31 +1551,31 @@ msgstr "" msgid "Since you're not using Amazon CloudFront for delivery, we recommend you do not enforce Object Ownership unless you have a very good reason to do so." msgstr "" -#: classes/providers/storage/gcp-provider.php:756 +#: classes/providers/storage/gcp-provider.php:773 msgid "Media cannot be offloaded due to invalid JSON in the key file." msgstr "" -#: classes/providers/storage/gcp-provider.php:786 +#: classes/providers/storage/gcp-provider.php:805 msgid "Media cannot be offloaded due to a missing project_id field which may be the result of an old or obsolete key file. Create a new key file" msgstr "" -#: classes/providers/storage/gcp-provider.php:798 +#: classes/providers/storage/gcp-provider.php:820 msgid "Media cannot be offloaded due to a missing private_key field in the key file. Create a new key file" msgstr "" -#: classes/providers/storage/gcp-provider.php:810 +#: classes/providers/storage/gcp-provider.php:835 msgid "Media cannot be offloaded due to a missing type field in the key file. Create a new key file" msgstr "" -#: classes/providers/storage/gcp-provider.php:822 +#: classes/providers/storage/gcp-provider.php:850 msgid "Media cannot be offloaded due to a missing client_email field in the key file. Create a new key file" msgstr "" -#: classes/providers/storage/gcp-provider.php:845 +#: classes/providers/storage/gcp-provider.php:876 msgid "Media cannot be offloaded due to an invalid OpenSSL Private Key. Update the key file" msgstr "" -#: classes/providers/storage/gcp-provider.php:855 +#: classes/providers/storage/gcp-provider.php:889 msgid "Media cannot be offloaded using the provided service account. Read more" msgstr "" diff --git a/readme.txt b/readme.txt index f3f6e577..4ed8a410 100644 --- a/readme.txt +++ b/readme.txt @@ -2,9 +2,9 @@ Contributors: wpengine, deliciousbrains, ianmjones, eriktorsner, kevinwhoffman, tysonreeder, dalewilliams, lewisia32, mattshaw, aaemnnosttv, a5hleyrich, polevaultweb, bradt, joetan Tags: uploads, amazon, s3, amazon s3, digitalocean, digitalocean spaces, google cloud storage, gcs, mirror, admin, media, cdn, cloudfront Requires at least: 5.5 -Tested up to: 6.6 +Tested up to: 6.7 Requires PHP: 7.2 -Stable tag: 3.2.9 +Stable tag: 3.2.10 License: GPLv3 Copies files to Amazon S3, DigitalOcean Spaces or Google Cloud Storage as they are uploaded to the Media Library. Optionally configure Amazon CloudFront or another CDN for faster delivery. @@ -85,6 +85,12 @@ This version requires PHP 5.3.3+ and the Amazon Web Services plugin == Changelog == += WP Offload Media Lite 3.2.10 - 2024-12-12 = +* New: DigitalOcean regions Toronto (TOR1) and London (LON1) are now selectable +* New: Google Cloud Storage regions Africa (Johannesburg), Dual-Region (Belgium/London), Dual-Region (London/Frankfurt) and Dual-Region (Frankfurt/Zürich) are now selectable +* New: Google Cloud Storage SDK has been updated to v1.39.0 (requires PHP 7.4+) +* Bug fix: Speed of adding new media is no longer affected by the number of records in the postmeta table + = WP Offload Media Lite 3.2.9 - 2024-10-04 = * Security: The plugin now uses its own update mechanism from WP Engine servers * New: Amazon S3 region Asia Pacific (Malaysia) is now selectable diff --git a/vendor/Gcp/autoload.php b/vendor/Gcp/autoload.php index 022d9d2a..16b3d5c4 100644 --- a/vendor/Gcp/autoload.php +++ b/vendor/Gcp/autoload.php @@ -18,4 +18,4 @@ \trigger_error($err, \E_USER_ERROR); } require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInite64427848cc1598247c6e395b9c1e5b2::getLoader(); +return ComposerAutoloaderInit70b5f975990d46b5c7c90dc9717b8578::getLoader(); diff --git a/vendor/Gcp/bin/google-cloud-batch b/vendor/Gcp/bin/google-cloud-batch index 72169739..267bb038 100644 --- a/vendor/Gcp/bin/google-cloud-batch +++ b/vendor/Gcp/bin/google-cloud-batch @@ -88,8 +88,7 @@ if (\PHP_VERSION_ID < 80000) { } } if (\function_exists('stream_get_wrappers') && \in_array('phpvfscomposer', \stream_get_wrappers(), \true) || \function_exists('stream_wrapper_register') && \stream_wrapper_register('phpvfscomposer', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Composer\\BinProxyWrapper')) { - include "phpvfscomposer://" . __DIR__ . '/..' . '/google/cloud-core/bin/google-cloud-batch'; - exit(0); + return include "phpvfscomposer://" . __DIR__ . '/..' . '/google/cloud-core/bin/google-cloud-batch'; } } -include __DIR__ . '/..' . '/google/cloud-core/bin/google-cloud-batch'; +return include __DIR__ . '/..' . '/google/cloud-core/bin/google-cloud-batch'; diff --git a/vendor/Gcp/composer/ClassLoader.php b/vendor/Gcp/composer/ClassLoader.php index f0f19806..d31631ae 100644 --- a/vendor/Gcp/composer/ClassLoader.php +++ b/vendor/Gcp/composer/ClassLoader.php @@ -43,57 +43,54 @@ class ClassLoader { /** @var \Closure(string):void */ private static $includeFile; - /** @var ?string */ + /** @var string|null */ private $vendorDir; // PSR-4 /** - * @var array[] - * @psalm-var array> + * @var array> */ private $prefixLengthsPsr4 = array(); /** - * @var array[] - * @psalm-var array> + * @var array> */ private $prefixDirsPsr4 = array(); /** - * @var array[] - * @psalm-var array + * @var list */ private $fallbackDirsPsr4 = array(); // PSR-0 /** - * @var array[] - * @psalm-var array> + * List of PSR-0 prefixes + * + * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) + * + * @var array>> */ private $prefixesPsr0 = array(); /** - * @var array[] - * @psalm-var array + * @var list */ private $fallbackDirsPsr0 = array(); /** @var bool */ private $useIncludePath = \false; /** - * @var string[] - * @psalm-var array + * @var array */ private $classMap = array(); /** @var bool */ private $classMapAuthoritative = \false; /** - * @var bool[] - * @psalm-var array + * @var array */ private $missingClasses = array(); - /** @var ?string */ + /** @var string|null */ private $apcuPrefix; /** - * @var self[] + * @var array */ private static $registeredLoaders = array(); /** - * @param ?string $vendorDir + * @param string|null $vendorDir */ public function __construct($vendorDir = null) { @@ -101,7 +98,7 @@ public function __construct($vendorDir = null) self::initializeIncludeClosure(); } /** - * @return string[] + * @return array> */ public function getPrefixes() { @@ -111,40 +108,35 @@ public function getPrefixes() return array(); } /** - * @return array[] - * @psalm-return array> + * @return array> */ public function getPrefixesPsr4() { return $this->prefixDirsPsr4; } /** - * @return array[] - * @psalm-return array + * @return list */ public function getFallbackDirs() { return $this->fallbackDirsPsr0; } /** - * @return array[] - * @psalm-return array + * @return list */ public function getFallbackDirsPsr4() { return $this->fallbackDirsPsr4; } /** - * @return string[] Array of classname => path - * @psalm-return array + * @return array Array of classname => path */ public function getClassMap() { return $this->classMap; } /** - * @param string[] $classMap Class to filename map - * @psalm-param array $classMap + * @param array $classMap Class to filename map * * @return void */ @@ -160,40 +152,41 @@ public function addClassMap(array $classMap) * Registers a set of PSR-0 directories for a given prefix, either * appending or prepending to the ones previously set for this prefix. * - * @param string $prefix The prefix - * @param string[]|string $paths The PSR-0 root directories - * @param bool $prepend Whether to prepend the directories + * @param string $prefix The prefix + * @param list|string $paths The PSR-0 root directories + * @param bool $prepend Whether to prepend the directories * * @return void */ public function add($prefix, $paths, $prepend = \false) { + $paths = (array) $paths; if (!$prefix) { if ($prepend) { - $this->fallbackDirsPsr0 = \array_merge((array) $paths, $this->fallbackDirsPsr0); + $this->fallbackDirsPsr0 = \array_merge($paths, $this->fallbackDirsPsr0); } else { - $this->fallbackDirsPsr0 = \array_merge($this->fallbackDirsPsr0, (array) $paths); + $this->fallbackDirsPsr0 = \array_merge($this->fallbackDirsPsr0, $paths); } return; } $first = $prefix[0]; if (!isset($this->prefixesPsr0[$first][$prefix])) { - $this->prefixesPsr0[$first][$prefix] = (array) $paths; + $this->prefixesPsr0[$first][$prefix] = $paths; return; } if ($prepend) { - $this->prefixesPsr0[$first][$prefix] = \array_merge((array) $paths, $this->prefixesPsr0[$first][$prefix]); + $this->prefixesPsr0[$first][$prefix] = \array_merge($paths, $this->prefixesPsr0[$first][$prefix]); } else { - $this->prefixesPsr0[$first][$prefix] = \array_merge($this->prefixesPsr0[$first][$prefix], (array) $paths); + $this->prefixesPsr0[$first][$prefix] = \array_merge($this->prefixesPsr0[$first][$prefix], $paths); } } /** * Registers a set of PSR-4 directories for a given namespace, either * appending or prepending to the ones previously set for this namespace. * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param string[]|string $paths The PSR-4 base directories - * @param bool $prepend Whether to prepend the directories + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param list|string $paths The PSR-4 base directories + * @param bool $prepend Whether to prepend the directories * * @throws \InvalidArgumentException * @@ -201,12 +194,13 @@ public function add($prefix, $paths, $prepend = \false) */ public function addPsr4($prefix, $paths, $prepend = \false) { + $paths = (array) $paths; if (!$prefix) { // Register directories for the root namespace. if ($prepend) { - $this->fallbackDirsPsr4 = \array_merge((array) $paths, $this->fallbackDirsPsr4); + $this->fallbackDirsPsr4 = \array_merge($paths, $this->fallbackDirsPsr4); } else { - $this->fallbackDirsPsr4 = \array_merge($this->fallbackDirsPsr4, (array) $paths); + $this->fallbackDirsPsr4 = \array_merge($this->fallbackDirsPsr4, $paths); } } elseif (!isset($this->prefixDirsPsr4[$prefix])) { // Register directories for a new namespace. @@ -215,21 +209,21 @@ public function addPsr4($prefix, $paths, $prepend = \false) throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); } $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; - $this->prefixDirsPsr4[$prefix] = (array) $paths; + $this->prefixDirsPsr4[$prefix] = $paths; } elseif ($prepend) { // Prepend directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = \array_merge((array) $paths, $this->prefixDirsPsr4[$prefix]); + $this->prefixDirsPsr4[$prefix] = \array_merge($paths, $this->prefixDirsPsr4[$prefix]); } else { // Append directories for an already registered namespace. - $this->prefixDirsPsr4[$prefix] = \array_merge($this->prefixDirsPsr4[$prefix], (array) $paths); + $this->prefixDirsPsr4[$prefix] = \array_merge($this->prefixDirsPsr4[$prefix], $paths); } } /** * Registers a set of PSR-0 directories for a given prefix, * replacing any others previously set for this prefix. * - * @param string $prefix The prefix - * @param string[]|string $paths The PSR-0 base directories + * @param string $prefix The prefix + * @param list|string $paths The PSR-0 base directories * * @return void */ @@ -245,8 +239,8 @@ public function set($prefix, $paths) * Registers a set of PSR-4 directories for a given namespace, * replacing any others previously set for this namespace. * - * @param string $prefix The prefix/namespace, with trailing '\\' - * @param string[]|string $paths The PSR-4 base directories + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param list|string $paths The PSR-4 base directories * * @throws \InvalidArgumentException * @@ -411,9 +405,9 @@ public function findFile($class) return $file; } /** - * Returns the currently registered loaders indexed by their corresponding vendor directories. + * Returns the currently registered loaders keyed by their corresponding vendor directories. * - * @return self[] + * @return array */ public static function getRegisteredLoaders() { diff --git a/vendor/Gcp/composer/InstalledVersions.php b/vendor/Gcp/composer/InstalledVersions.php index 78ac4f68..687d272a 100644 --- a/vendor/Gcp/composer/InstalledVersions.php +++ b/vendor/Gcp/composer/InstalledVersions.php @@ -87,7 +87,7 @@ public static function isInstalled($packageName, $includeDevRequirements = \true { foreach (self::getInstalled() as $installed) { if (isset($installed['versions'][$packageName])) { - return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']); + return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === \false; } } return \false; @@ -106,7 +106,7 @@ public static function isInstalled($packageName, $includeDevRequirements = \true */ public static function satisfies(VersionParser $parser, $packageName, $constraint) { - $constraint = $parser->parseConstraints($constraint); + $constraint = $parser->parseConstraints((string) $constraint); $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); return $provided->matches($constraint); } @@ -285,7 +285,9 @@ private static function getInstalled() if (isset(self::$installedByVendor[$vendorDir])) { $installed[] = self::$installedByVendor[$vendorDir]; } elseif (\is_file($vendorDir . '/composer/installed.php')) { - $installed[] = self::$installedByVendor[$vendorDir] = (require $vendorDir . '/composer/installed.php'); + /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ + $required = (require $vendorDir . '/composer/installed.php'); + $installed[] = self::$installedByVendor[$vendorDir] = $required; if (null === self::$installed && \strtr($vendorDir . '/composer', '\\', '/') === \strtr(__DIR__, '\\', '/')) { self::$installed = $installed[\count($installed) - 1]; } @@ -296,12 +298,16 @@ private static function getInstalled() // only require the installed.php file if this file is loaded from its dumped location, // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 if (\substr(__DIR__, -8, 1) !== 'C') { - self::$installed = (require __DIR__ . '/installed.php'); + /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ + $required = (require __DIR__ . '/installed.php'); + self::$installed = $required; } else { self::$installed = array(); } } - $installed[] = self::$installed; + if (self::$installed !== array()) { + $installed[] = self::$installed; + } return $installed; } } diff --git a/vendor/Gcp/composer/autoload_classmap.php b/vendor/Gcp/composer/autoload_classmap.php index 0ad838d0..447d130b 100644 --- a/vendor/Gcp/composer/autoload_classmap.php +++ b/vendor/Gcp/composer/autoload_classmap.php @@ -5,4 +5,4 @@ // autoload_classmap.php @generated by Composer $vendorDir = \dirname(__DIR__); $baseDir = \dirname($vendorDir); -return array('Attribute' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigDecimal' => $vendorDir . '/brick/math/src/BigDecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigInteger' => $vendorDir . '/brick/math/src/BigInteger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigNumber' => $vendorDir . '/brick/math/src/BigNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigRational' => $vendorDir . '/brick/math/src/BigRational.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\DivisionByZeroException' => $vendorDir . '/brick/math/src/Exception/DivisionByZeroException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\IntegerOverflowException' => $vendorDir . '/brick/math/src/Exception/IntegerOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\MathException' => $vendorDir . '/brick/math/src/Exception/MathException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NegativeNumberException' => $vendorDir . '/brick/math/src/Exception/NegativeNumberException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NumberFormatException' => $vendorDir . '/brick/math/src/Exception/NumberFormatException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\RoundingNecessaryException' => $vendorDir . '/brick/math/src/Exception/RoundingNecessaryException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator' => $vendorDir . '/brick/math/src/Internal/Calculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\BcMathCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/BcMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\GmpCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/GmpCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\NativeCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/NativeCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\RoundingMode' => $vendorDir . '/brick/math/src/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\BeforeValidException' => $vendorDir . '/firebase/php-jwt/src/BeforeValidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\CachedKeySet' => $vendorDir . '/firebase/php-jwt/src/CachedKeySet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\ExpiredException' => $vendorDir . '/firebase/php-jwt/src/ExpiredException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWK' => $vendorDir . '/firebase/php-jwt/src/JWK.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWT' => $vendorDir . '/firebase/php-jwt/src/JWT.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\Key' => $vendorDir . '/firebase/php-jwt/src/Key.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\SignatureInvalidException' => $vendorDir . '/firebase/php-jwt/src/SignatureInvalidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\AccessToken' => $vendorDir . '/google/auth/src/AccessToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ApplicationDefaultCredentials' => $vendorDir . '/google/auth/src/ApplicationDefaultCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CacheTrait' => $vendorDir . '/google/auth/src/CacheTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\InvalidArgumentException' => $vendorDir . '/google/auth/src/Cache/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\Item' => $vendorDir . '/google/auth/src/Cache/Item.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\MemoryCacheItemPool' => $vendorDir . '/google/auth/src/Cache/MemoryCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\SysVCacheItemPool' => $vendorDir . '/google/auth/src/Cache/SysVCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\TypedItem' => $vendorDir . '/google/auth/src/Cache/TypedItem.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialsLoader' => $vendorDir . '/google/auth/src/CredentialsLoader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\AppIdentityCredentials' => $vendorDir . '/google/auth/src/Credentials/AppIdentityCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\GCECredentials' => $vendorDir . '/google/auth/src/Credentials/GCECredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\IAMCredentials' => $vendorDir . '/google/auth/src/Credentials/IAMCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ImpersonatedServiceAccountCredentials' => $vendorDir . '/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\InsecureCredentials' => $vendorDir . '/google/auth/src/Credentials/InsecureCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountCredentials' => $vendorDir . '/google/auth/src/Credentials/ServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountJwtAccessCredentials' => $vendorDir . '/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\UserRefreshCredentials' => $vendorDir . '/google/auth/src/Credentials/UserRefreshCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenCache' => $vendorDir . '/google/auth/src/FetchAuthTokenCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenInterface' => $vendorDir . '/google/auth/src/FetchAuthTokenInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GCECache' => $vendorDir . '/google/auth/src/GCECache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetQuotaProjectInterface' => $vendorDir . '/google/auth/src/GetQuotaProjectInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle6HttpHandler' => $vendorDir . '/google/auth/src/HttpHandler/Guzzle6HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle7HttpHandler' => $vendorDir . '/google/auth/src/HttpHandler/Guzzle7HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpClientCache' => $vendorDir . '/google/auth/src/HttpHandler/HttpClientCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpHandlerFactory' => $vendorDir . '/google/auth/src/HttpHandler/HttpHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Iam' => $vendorDir . '/google/auth/src/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\IamSignerTrait' => $vendorDir . '/google/auth/src/IamSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\AuthTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/AuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ProxyAuthTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/ProxyAuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ScopedAccessTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/ScopedAccessTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\SimpleMiddleware' => $vendorDir . '/google/auth/src/Middleware/SimpleMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\OAuth2' => $vendorDir . '/google/auth/src/OAuth2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ProjectIdProviderInterface' => $vendorDir . '/google/auth/src/ProjectIdProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ServiceAccountSignerTrait' => $vendorDir . '/google/auth/src/ServiceAccountSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\SignBlobInterface' => $vendorDir . '/google/auth/src/SignBlobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataInterface' => $vendorDir . '/google/auth/src/UpdateMetadataInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Builtin' => $vendorDir . '/google/crc32/src/Builtin.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRC32' => $vendorDir . '/google/crc32/src/CRC32.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRCInterface' => $vendorDir . '/google/crc32/src/CRCInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRCTrait' => $vendorDir . '/google/crc32/src/CRCTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Google' => $vendorDir . '/google/crc32/src/Google.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\PHP' => $vendorDir . '/google/crc32/src/PHP.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\PHPSlicedBy4' => $vendorDir . '/google/crc32/src/PHPSlicedBy4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Table' => $vendorDir . '/google/crc32/src/Table.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\AnonymousCredentials' => $vendorDir . '/google/cloud-core/src/AnonymousCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ArrayTrait' => $vendorDir . '/google/cloud-core/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemon' => $vendorDir . '/google/cloud-core/src/Batch/BatchDaemon.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemonTrait' => $vendorDir . '/google/cloud-core/src/Batch/BatchDaemonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchJob' => $vendorDir . '/google/cloud-core/src/Batch/BatchJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchRunner' => $vendorDir . '/google/cloud-core/src/Batch/BatchRunner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchTrait' => $vendorDir . '/google/cloud-core/src/Batch/BatchTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ClosureSerializerInterface' => $vendorDir . '/google/cloud-core/src/Batch/ClosureSerializerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ConfigStorageInterface' => $vendorDir . '/google/cloud-core/src/Batch/ConfigStorageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\HandleFailureTrait' => $vendorDir . '/google/cloud-core/src/Batch/HandleFailureTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InMemoryConfigStorage' => $vendorDir . '/google/cloud-core/src/Batch/InMemoryConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InterruptTrait' => $vendorDir . '/google/cloud-core/src/Batch/InterruptTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobConfig' => $vendorDir . '/google/cloud-core/src/Batch/JobConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobInterface' => $vendorDir . '/google/cloud-core/src/Batch/JobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobTrait' => $vendorDir . '/google/cloud-core/src/Batch/JobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\OpisClosureSerializer' => $vendorDir . '/google/cloud-core/src/Batch/OpisClosureSerializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ProcessItemInterface' => $vendorDir . '/google/cloud-core/src/Batch/ProcessItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\QueueOverflowException' => $vendorDir . '/google/cloud-core/src/Batch/QueueOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\Retry' => $vendorDir . '/google/cloud-core/src/Batch/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SerializableClientTrait' => $vendorDir . '/google/cloud-core/src/Batch/SerializableClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJob' => $vendorDir . '/google/cloud-core/src/Batch/SimpleJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJobTrait' => $vendorDir . '/google/cloud-core/src/Batch/SimpleJobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvConfigStorage' => $vendorDir . '/google/cloud-core/src/Batch/SysvConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvProcessor' => $vendorDir . '/google/cloud-core/src/Batch/SysvProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Blob' => $vendorDir . '/google/cloud-core/src/Blob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\CallTrait' => $vendorDir . '/google/cloud-core/src/CallTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ClientTrait' => $vendorDir . '/google/cloud-core/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata' => $vendorDir . '/google/cloud-core/src/Compute/Metadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\HttpHandlerReader' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/HttpHandlerReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\ReaderInterface' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/ReaderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\StreamReader' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/StreamReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ConcurrencyControlTrait' => $vendorDir . '/google/cloud-core/src/ConcurrencyControlTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DebugInfoTrait' => $vendorDir . '/google/cloud-core/src/DebugInfoTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Duration' => $vendorDir . '/google/cloud-core/src/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\EmulatorTrait' => $vendorDir . '/google/cloud-core/src/EmulatorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\AbortedException' => $vendorDir . '/google/cloud-core/src/Exception/AbortedException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\BadRequestException' => $vendorDir . '/google/cloud-core/src/Exception/BadRequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ConflictException' => $vendorDir . '/google/cloud-core/src/Exception/ConflictException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\DeadlineExceededException' => $vendorDir . '/google/cloud-core/src/Exception/DeadlineExceededException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\FailedPreconditionException' => $vendorDir . '/google/cloud-core/src/Exception/FailedPreconditionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\GoogleException' => $vendorDir . '/google/cloud-core/src/Exception/GoogleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\NotFoundException' => $vendorDir . '/google/cloud-core/src/Exception/NotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServerException' => $vendorDir . '/google/cloud-core/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServiceException' => $vendorDir . '/google/cloud-core/src/Exception/ServiceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ExponentialBackoff' => $vendorDir . '/google/cloud-core/src/ExponentialBackoff.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GeoPoint' => $vendorDir . '/google/cloud-core/src/GeoPoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcRequestWrapper' => $vendorDir . '/google/cloud-core/src/GrpcRequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcTrait' => $vendorDir . '/google/cloud-core/src/GrpcTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\Iam' => $vendorDir . '/google/cloud-core/src/Iam/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamConnectionInterface' => $vendorDir . '/google/cloud-core/src/Iam/IamConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\PolicyBuilder' => $vendorDir . '/google/cloud-core/src/Iam/PolicyBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\InsecureCredentialsWrapper' => $vendorDir . '/google/cloud-core/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Int64' => $vendorDir . '/google/cloud-core/src/Int64.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIterator' => $vendorDir . '/google/cloud-core/src/Iterator/ItemIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIteratorTrait' => $vendorDir . '/google/cloud-core/src/Iterator/ItemIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIterator' => $vendorDir . '/google/cloud-core/src/Iterator/PageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIteratorTrait' => $vendorDir . '/google/cloud-core/src/Iterator/PageIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\JsonTrait' => $vendorDir . '/google/cloud-core/src/JsonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\FlockLock' => $vendorDir . '/google/cloud-core/src/Lock/FlockLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockInterface' => $vendorDir . '/google/cloud-core/src/Lock/LockInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockTrait' => $vendorDir . '/google/cloud-core/src/Lock/LockTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SemaphoreLock' => $vendorDir . '/google/cloud-core/src/Lock/SemaphoreLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SymfonyLockAdapter' => $vendorDir . '/google/cloud-core/src/Lock/SymfonyLockAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatter' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV2' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV3' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandler' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerFactory' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV2' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV3' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\FormatterTrait' => $vendorDir . '/google/cloud-core/src/Logger/FormatterTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LROTrait' => $vendorDir . '/google/cloud-core/src/LongRunning/LROTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningConnectionInterface' => $vendorDir . '/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningOperation' => $vendorDir . '/google/cloud-core/src/LongRunning/LongRunningOperation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\OperationResponseTrait' => $vendorDir . '/google/cloud-core/src/LongRunning/OperationResponseTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\PhpArray' => $vendorDir . '/google/cloud-core/src/PhpArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\CloudRunMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/CloudRunMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\EmptyMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/EmptyMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEFlexMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEFlexMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEStandardMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEStandardMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderInterface' => $vendorDir . '/google/cloud-core/src/Report/MetadataProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderUtils' => $vendorDir . '/google/cloud-core/src/Report/MetadataProviderUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\SimpleMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/SimpleMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestBuilder' => $vendorDir . '/google/cloud-core/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapper' => $vendorDir . '/google/cloud-core/src/RequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapperTrait' => $vendorDir . '/google/cloud-core/src/RequestWrapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RestTrait' => $vendorDir . '/google/cloud-core/src/RestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Retry' => $vendorDir . '/google/cloud-core/src/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RetryDeciderTrait' => $vendorDir . '/google/cloud-core/src/RetryDeciderTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ServiceBuilder' => $vendorDir . '/google/cloud-core/src/ServiceBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\SysvTrait' => $vendorDir . '/google/cloud-core/src/SysvTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\ArrayHasSameValuesToken' => $vendorDir . '/google/cloud-core/src/Testing/ArrayHasSameValuesToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\CheckForClassTrait' => $vendorDir . '/google/cloud-core/src/Testing/CheckForClassTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\DatastoreOperationRefreshTrait' => $vendorDir . '/google/cloud-core/src/Testing/DatastoreOperationRefreshTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\FileListFilterIterator' => $vendorDir . '/google/cloud-core/src/Testing/FileListFilterIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GcTestListener' => $vendorDir . '/google/cloud-core/src/Testing/GcTestListener.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GrpcTestTrait' => $vendorDir . '/google/cloud-core/src/Testing/GrpcTestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\KeyPairGenerateTrait' => $vendorDir . '/google/cloud-core/src/Testing/KeyPairGenerateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Lock\\MockValues' => $vendorDir . '/google/cloud-core/src/Testing/Lock/MockValues.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\DescriptionFactory' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/DescriptionFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerFactory' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerV5' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\RegexFileFilter' => $vendorDir . '/google/cloud-core/src/Testing/RegexFileFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Container' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Container.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Coverage' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/Coverage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ExcludeFilter' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/ExcludeFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Scanner' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/Scanner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ScannerInterface' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/ScannerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Fixtures' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Fixtures.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\InvokeResult' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/InvokeResult.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Parser' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Snippet' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/Snippet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\SnippetTestCase' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/SnippetTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\StubTrait' => $vendorDir . '/google/cloud-core/src/Testing/StubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\DeletionQueue' => $vendorDir . '/google/cloud-core/src/Testing/System/DeletionQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\KeyManager' => $vendorDir . '/google/cloud-core/src/Testing/System/KeyManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\SystemTestCase' => $vendorDir . '/google/cloud-core/src/Testing/System/SystemTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\TestHelpers' => $vendorDir . '/google/cloud-core/src/Testing/TestHelpers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimeTrait' => $vendorDir . '/google/cloud-core/src/TimeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Timestamp' => $vendorDir . '/google/cloud-core/src/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimestampTrait' => $vendorDir . '/google/cloud-core/src/TimestampTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\AbstractUploader' => $vendorDir . '/google/cloud-core/src/Upload/AbstractUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\MultipartUploader' => $vendorDir . '/google/cloud-core/src/Upload/MultipartUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\ResumableUploader' => $vendorDir . '/google/cloud-core/src/Upload/ResumableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\SignedUrlUploader' => $vendorDir . '/google/cloud-core/src/Upload/SignedUrlUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\StreamableUploader' => $vendorDir . '/google/cloud-core/src/Upload/StreamableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\UriTrait' => $vendorDir . '/google/cloud-core/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValidateTrait' => $vendorDir . '/google/cloud-core/src/ValidateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValueMapperTrait' => $vendorDir . '/google/cloud-core/src/ValueMapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\WhitelistTrait' => $vendorDir . '/google/cloud-core/src/WhitelistTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Acl' => $vendorDir . '/google/cloud-storage/src/Acl.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Bucket' => $vendorDir . '/google/cloud-storage/src/Bucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\ConnectionInterface' => $vendorDir . '/google/cloud-storage/src/Connection/ConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\IamBucket' => $vendorDir . '/google/cloud-storage/src/Connection/IamBucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\Rest' => $vendorDir . '/google/cloud-storage/src/Connection/Rest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\RetryTrait' => $vendorDir . '/google/cloud-storage/src/Connection/RetryTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\CreatedHmacKey' => $vendorDir . '/google/cloud-storage/src/CreatedHmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\EncryptionTrait' => $vendorDir . '/google/cloud-storage/src/EncryptionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\HmacKey' => $vendorDir . '/google/cloud-storage/src/HmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Lifecycle' => $vendorDir . '/google/cloud-storage/src/Lifecycle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Notification' => $vendorDir . '/google/cloud-storage/src/Notification.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectIterator' => $vendorDir . '/google/cloud-storage/src/ObjectIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectPageIterator' => $vendorDir . '/google/cloud-storage/src/ObjectPageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ReadStream' => $vendorDir . '/google/cloud-storage/src/ReadStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\SigningHelper' => $vendorDir . '/google/cloud-storage/src/SigningHelper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageClient' => $vendorDir . '/google/cloud-storage/src/StorageClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageObject' => $vendorDir . '/google/cloud-storage/src/StorageObject.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StreamWrapper' => $vendorDir . '/google/cloud-storage/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\WriteStream' => $vendorDir . '/google/cloud-storage/src/WriteStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizer' => $vendorDir . '/guzzlehttp/guzzle/src/BodySummarizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizerInterface' => $vendorDir . '/guzzlehttp/guzzle/src/BodySummarizerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Client' => $vendorDir . '/guzzlehttp/guzzle/src/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientInterface' => $vendorDir . '/guzzlehttp/guzzle/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientTrait' => $vendorDir . '/guzzlehttp/guzzle/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/CookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJarInterface' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\FileCookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SessionCookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SetCookie' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/SetCookie.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\BadResponseException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/BadResponseException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ClientException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ClientException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ConnectException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ConnectException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\GuzzleException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/GuzzleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\InvalidArgumentException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\RequestException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/RequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ServerException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TooManyRedirectsException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TransferException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/TransferException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\HandlerStack' => $vendorDir . '/guzzlehttp/guzzle/src/HandlerStack.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactory' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactoryInterface' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlMultiHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\EasyHandle' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/EasyHandle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\HeaderProcessor' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\MockHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/MockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\Proxy' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/Proxy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\StreamHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatter' => $vendorDir . '/guzzlehttp/guzzle/src/MessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatterInterface' => $vendorDir . '/guzzlehttp/guzzle/src/MessageFormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Middleware' => $vendorDir . '/guzzlehttp/guzzle/src/Middleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Pool' => $vendorDir . '/guzzlehttp/guzzle/src/Pool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\PrepareBodyMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\AggregateException' => $vendorDir . '/guzzlehttp/promises/src/AggregateException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\CancellationException' => $vendorDir . '/guzzlehttp/promises/src/CancellationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Coroutine' => $vendorDir . '/guzzlehttp/promises/src/Coroutine.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Create' => $vendorDir . '/guzzlehttp/promises/src/Create.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Each' => $vendorDir . '/guzzlehttp/promises/src/Each.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\EachPromise' => $vendorDir . '/guzzlehttp/promises/src/EachPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\FulfilledPromise' => $vendorDir . '/guzzlehttp/promises/src/FulfilledPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Is' => $vendorDir . '/guzzlehttp/promises/src/Is.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Promise' => $vendorDir . '/guzzlehttp/promises/src/Promise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromiseInterface' => $vendorDir . '/guzzlehttp/promises/src/PromiseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromisorInterface' => $vendorDir . '/guzzlehttp/promises/src/PromisorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectedPromise' => $vendorDir . '/guzzlehttp/promises/src/RejectedPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectionException' => $vendorDir . '/guzzlehttp/promises/src/RejectionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueue' => $vendorDir . '/guzzlehttp/promises/src/TaskQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueueInterface' => $vendorDir . '/guzzlehttp/promises/src/TaskQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Utils' => $vendorDir . '/guzzlehttp/promises/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\AppendStream' => $vendorDir . '/guzzlehttp/psr7/src/AppendStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\BufferStream' => $vendorDir . '/guzzlehttp/psr7/src/BufferStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\CachingStream' => $vendorDir . '/guzzlehttp/psr7/src/CachingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\DroppingStream' => $vendorDir . '/guzzlehttp/psr7/src/DroppingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Exception\\MalformedUriException' => $vendorDir . '/guzzlehttp/psr7/src/Exception/MalformedUriException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\FnStream' => $vendorDir . '/guzzlehttp/psr7/src/FnStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Header' => $vendorDir . '/guzzlehttp/psr7/src/Header.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\HttpFactory' => $vendorDir . '/guzzlehttp/psr7/src/HttpFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\InflateStream' => $vendorDir . '/guzzlehttp/psr7/src/InflateStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LazyOpenStream' => $vendorDir . '/guzzlehttp/psr7/src/LazyOpenStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LimitStream' => $vendorDir . '/guzzlehttp/psr7/src/LimitStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Message' => $vendorDir . '/guzzlehttp/psr7/src/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MessageTrait' => $vendorDir . '/guzzlehttp/psr7/src/MessageTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MimeType' => $vendorDir . '/guzzlehttp/psr7/src/MimeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MultipartStream' => $vendorDir . '/guzzlehttp/psr7/src/MultipartStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\NoSeekStream' => $vendorDir . '/guzzlehttp/psr7/src/NoSeekStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\PumpStream' => $vendorDir . '/guzzlehttp/psr7/src/PumpStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Query' => $vendorDir . '/guzzlehttp/psr7/src/Query.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Request' => $vendorDir . '/guzzlehttp/psr7/src/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Response' => $vendorDir . '/guzzlehttp/psr7/src/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Rfc7230' => $vendorDir . '/guzzlehttp/psr7/src/Rfc7230.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\ServerRequest' => $vendorDir . '/guzzlehttp/psr7/src/ServerRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Stream' => $vendorDir . '/guzzlehttp/psr7/src/Stream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamDecoratorTrait' => $vendorDir . '/guzzlehttp/psr7/src/StreamDecoratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamWrapper' => $vendorDir . '/guzzlehttp/psr7/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UploadedFile' => $vendorDir . '/guzzlehttp/psr7/src/UploadedFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Uri' => $vendorDir . '/guzzlehttp/psr7/src/Uri.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriComparator' => $vendorDir . '/guzzlehttp/psr7/src/UriComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriNormalizer' => $vendorDir . '/guzzlehttp/psr7/src/UriNormalizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriResolver' => $vendorDir . '/guzzlehttp/psr7/src/UriResolver.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Utils' => $vendorDir . '/guzzlehttp/psr7/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RedirectMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/RedirectMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RequestOptions' => $vendorDir . '/guzzlehttp/guzzle/src/RequestOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RetryMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\TransferStats' => $vendorDir . '/guzzlehttp/guzzle/src/TransferStats.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Utils' => $vendorDir . '/guzzlehttp/guzzle/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Attribute\\AsMonologProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Attribute/AsMonologProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\DateTimeImmutable' => $vendorDir . '/monolog/monolog/src/Monolog/DateTimeImmutable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ErrorHandler' => $vendorDir . '/monolog/monolog/src/Monolog/ErrorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ChromePHPFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticaFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ElasticaFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticsearchFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ElasticsearchFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FlowdockFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FlowdockFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FluentdFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FluentdFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FormatterInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GelfMessageFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GoogleCloudLoggingFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GoogleCloudLoggingFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\HtmlFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/HtmlFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\JsonFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/JsonFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LineFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LineFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogglyFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogglyFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogmaticFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogmaticFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogstashFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogstashFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\MongoDBFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/MongoDBFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\NormalizerFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/NormalizerFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ScalarFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ScalarFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\WildfireFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/WildfireFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractProcessingHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractSyslogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractSyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AmqpHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AmqpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BrowserConsoleHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/BrowserConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BufferHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/BufferHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ChromePHPHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ChromePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CouchDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/CouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CubeHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/CubeHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Curl\\Util' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Curl/Util.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DeduplicationHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DeduplicationHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DoctrineCouchDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DoctrineCouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DynamoDbHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DynamoDbHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticaHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ElasticaHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticsearchHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ElasticsearchHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ErrorLogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FallbackGroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FallbackGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FilterHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FilterHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossedHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossedHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ActivationStrategyInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ChannelLevelActivationStrategy' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ChannelLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ErrorLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FirePHPHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FirePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FleepHookHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FleepHookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FlowdockHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FlowdockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GelfHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/GelfHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/GroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Handler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Handler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/HandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerWrapper' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/HandlerWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\IFTTTHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/IFTTTHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\InsightOpsHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/InsightOpsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogEntriesHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogEntriesHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogglyHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogglyHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogmaticHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogmaticHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MailHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MailHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MandrillHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MandrillHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MissingExtensionException' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MongoDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MongoDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NativeMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NativeMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NewRelicHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NewRelicHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NoopHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NoopHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NullHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NullHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\OverflowHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/OverflowHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PHPConsoleHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PHPConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PsrHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PsrHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PushoverHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PushoverHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RedisHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisPubSubHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RedisPubSubHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RollbarHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RollbarHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RotatingFileHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SamplingHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SamplingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SendGridHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SendGridHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SlackHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackWebhookHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SlackWebhookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Slack\\SlackRecord' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Slack/SlackRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SocketHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SocketHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SqsHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SqsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\StreamHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SwiftMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SwiftMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SymfonyMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SymfonyMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdpHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogUdpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdp\\UdpSocket' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogUdp/UdpSocket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TelegramBotHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/TelegramBotHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TestHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/TestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WebRequestRecognizerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/WebRequestRecognizerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WhatFailureGroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/WhatFailureGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ZendMonitorHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ZendMonitorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\LogRecord' => $vendorDir . '/monolog/monolog/src/Monolog/LogRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Logger' => $vendorDir . '/monolog/monolog/src/Monolog/Logger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\GitProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/GitProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\HostnameProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/HostnameProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\IntrospectionProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/IntrospectionProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryPeakUsageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryPeakUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryUsageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MercurialProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MercurialProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessIdProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/ProcessIdProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessorInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\PsrLogMessageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/PsrLogMessageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\TagProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/TagProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\UidProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/UidProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\WebProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/WebProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Registry' => $vendorDir . '/monolog/monolog/src/Monolog/Registry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ResettableInterface' => $vendorDir . '/monolog/monolog/src/Monolog/ResettableInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\SignalHandler' => $vendorDir . '/monolog/monolog/src/Monolog/SignalHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Test\\TestCase' => $vendorDir . '/monolog/monolog/src/Monolog/Test/TestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Utils' => $vendorDir . '/monolog/monolog/src/Monolog/Utils.php', 'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheException' => $vendorDir . '/psr/cache/src/CacheException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemInterface' => $vendorDir . '/psr/cache/src/CacheItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemPoolInterface' => $vendorDir . '/psr/cache/src/CacheItemPoolInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\InvalidArgumentException' => $vendorDir . '/psr/cache/src/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientExceptionInterface' => $vendorDir . '/psr/http-client/src/ClientExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientInterface' => $vendorDir . '/psr/http-client/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\NetworkExceptionInterface' => $vendorDir . '/psr/http-client/src/NetworkExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\RequestExceptionInterface' => $vendorDir . '/psr/http-client/src/RequestExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\MessageInterface' => $vendorDir . '/psr/http-message/src/MessageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestFactoryInterface' => $vendorDir . '/psr/http-factory/src/RequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestInterface' => $vendorDir . '/psr/http-message/src/RequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseFactoryInterface' => $vendorDir . '/psr/http-factory/src/ResponseFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseInterface' => $vendorDir . '/psr/http-message/src/ResponseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestFactoryInterface' => $vendorDir . '/psr/http-factory/src/ServerRequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestInterface' => $vendorDir . '/psr/http-message/src/ServerRequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamFactoryInterface' => $vendorDir . '/psr/http-factory/src/StreamFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamInterface' => $vendorDir . '/psr/http-message/src/StreamInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileFactoryInterface' => $vendorDir . '/psr/http-factory/src/UploadedFileFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileInterface' => $vendorDir . '/psr/http-message/src/UploadedFileInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriFactoryInterface' => $vendorDir . '/psr/http-factory/src/UriFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriInterface' => $vendorDir . '/psr/http-message/src/UriInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\AbstractLogger' => $vendorDir . '/psr/log/Psr/Log/AbstractLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\InvalidArgumentException' => $vendorDir . '/psr/log/Psr/Log/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LogLevel' => $vendorDir . '/psr/log/Psr/Log/LogLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareInterface' => $vendorDir . '/psr/log/Psr/Log/LoggerAwareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareTrait' => $vendorDir . '/psr/log/Psr/Log/LoggerAwareTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerInterface' => $vendorDir . '/psr/log/Psr/Log/LoggerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerTrait' => $vendorDir . '/psr/log/Psr/Log/LoggerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\NullLogger' => $vendorDir . '/psr/log/Psr/Log/NullLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\DummyTest' => $vendorDir . '/psr/log/Psr/Log/Test/DummyTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\LoggerInterfaceTest' => $vendorDir . '/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\TestLogger' => $vendorDir . '/psr/log/Psr/Log/Test/TestLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractArray' => $vendorDir . '/ramsey/collection/src/AbstractArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractCollection' => $vendorDir . '/ramsey/collection/src/AbstractCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractSet' => $vendorDir . '/ramsey/collection/src/AbstractSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\ArrayInterface' => $vendorDir . '/ramsey/collection/src/ArrayInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Collection' => $vendorDir . '/ramsey/collection/src/Collection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\CollectionInterface' => $vendorDir . '/ramsey/collection/src/CollectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueue' => $vendorDir . '/ramsey/collection/src/DoubleEndedQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueueInterface' => $vendorDir . '/ramsey/collection/src/DoubleEndedQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\CollectionMismatchException' => $vendorDir . '/ramsey/collection/src/Exception/CollectionMismatchException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidArgumentException' => $vendorDir . '/ramsey/collection/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidSortOrderException' => $vendorDir . '/ramsey/collection/src/Exception/InvalidSortOrderException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\NoSuchElementException' => $vendorDir . '/ramsey/collection/src/Exception/NoSuchElementException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\OutOfBoundsException' => $vendorDir . '/ramsey/collection/src/Exception/OutOfBoundsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\UnsupportedOperationException' => $vendorDir . '/ramsey/collection/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\ValueExtractionException' => $vendorDir . '/ramsey/collection/src/Exception/ValueExtractionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\GenericArray' => $vendorDir . '/ramsey/collection/src/GenericArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractMap' => $vendorDir . '/ramsey/collection/src/Map/AbstractMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractTypedMap' => $vendorDir . '/ramsey/collection/src/Map/AbstractTypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AssociativeArrayMap' => $vendorDir . '/ramsey/collection/src/Map/AssociativeArrayMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\MapInterface' => $vendorDir . '/ramsey/collection/src/Map/MapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\NamedParameterMap' => $vendorDir . '/ramsey/collection/src/Map/NamedParameterMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMap' => $vendorDir . '/ramsey/collection/src/Map/TypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMapInterface' => $vendorDir . '/ramsey/collection/src/Map/TypedMapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Queue' => $vendorDir . '/ramsey/collection/src/Queue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\QueueInterface' => $vendorDir . '/ramsey/collection/src/QueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Set' => $vendorDir . '/ramsey/collection/src/Set.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\TypeTrait' => $vendorDir . '/ramsey/collection/src/Tool/TypeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueExtractorTrait' => $vendorDir . '/ramsey/collection/src/Tool/ValueExtractorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueToStringTrait' => $vendorDir . '/ramsey/collection/src/Tool/ValueToStringTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\BinaryUtils' => $vendorDir . '/ramsey/uuid/src/BinaryUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\BuilderCollection' => $vendorDir . '/ramsey/uuid/src/Builder/BuilderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DefaultUuidBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/DefaultUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DegradedUuidBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/DegradedUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\FallbackBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/FallbackBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\UuidBuilderInterface' => $vendorDir . '/ramsey/uuid/src/Builder/UuidBuilderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\CodecInterface' => $vendorDir . '/ramsey/uuid/src/Codec/CodecInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\GuidStringCodec' => $vendorDir . '/ramsey/uuid/src/Codec/GuidStringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\OrderedTimeCodec' => $vendorDir . '/ramsey/uuid/src/Codec/OrderedTimeCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\StringCodec' => $vendorDir . '/ramsey/uuid/src/Codec/StringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampFirstCombCodec' => $vendorDir . '/ramsey/uuid/src/Codec/TimestampFirstCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampLastCombCodec' => $vendorDir . '/ramsey/uuid/src/Codec/TimestampLastCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\NumberConverterInterface' => $vendorDir . '/ramsey/uuid/src/Converter/NumberConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\BigNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/BigNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\DegradedNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/DegradedNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\GenericNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\TimeConverterInterface' => $vendorDir . '/ramsey/uuid/src/Converter/TimeConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\BigNumberTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/BigNumberTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\DegradedTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/DegradedTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\GenericTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/GenericTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\PhpTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/PhpTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DegradedUuid' => $vendorDir . '/ramsey/uuid/src/DegradedUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidInterface' => $vendorDir . '/ramsey/uuid/src/DeprecatedUuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidMethodsTrait' => $vendorDir . '/ramsey/uuid/src/DeprecatedUuidMethodsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\BuilderNotFoundException' => $vendorDir . '/ramsey/uuid/src/Exception/BuilderNotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DateTimeException' => $vendorDir . '/ramsey/uuid/src/Exception/DateTimeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DceSecurityException' => $vendorDir . '/ramsey/uuid/src/Exception/DceSecurityException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidArgumentException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidBytesException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidBytesException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidUuidStringException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidUuidStringException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NameException' => $vendorDir . '/ramsey/uuid/src/Exception/NameException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NodeException' => $vendorDir . '/ramsey/uuid/src/Exception/NodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\RandomSourceException' => $vendorDir . '/ramsey/uuid/src/Exception/RandomSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\TimeSourceException' => $vendorDir . '/ramsey/uuid/src/Exception/TimeSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnableToBuildUuidException' => $vendorDir . '/ramsey/uuid/src/Exception/UnableToBuildUuidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnsupportedOperationException' => $vendorDir . '/ramsey/uuid/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UuidExceptionInterface' => $vendorDir . '/ramsey/uuid/src/Exception/UuidExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\FeatureSet' => $vendorDir . '/ramsey/uuid/src/FeatureSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\FieldsInterface' => $vendorDir . '/ramsey/uuid/src/Fields/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\SerializableFieldsTrait' => $vendorDir . '/ramsey/uuid/src/Fields/SerializableFieldsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\CombGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/CombGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DceSecurityGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/DceSecurityGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultNameGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DefaultNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultTimeGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DefaultTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/NameGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/NameGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidNameGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidRandomGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidRandomGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidTimeGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomBytesGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/RandomBytesGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/RandomGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/RandomGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomLibAdapter' => $vendorDir . '/ramsey/uuid/src/Generator/RandomLibAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/TimeGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/TimeGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Fields' => $vendorDir . '/ramsey/uuid/src/Guid/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Guid' => $vendorDir . '/ramsey/uuid/src/Guid/Guid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\GuidBuilder' => $vendorDir . '/ramsey/uuid/src/Guid/GuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Lazy\\LazyUuidFromString' => $vendorDir . '/ramsey/uuid/src/Lazy/LazyUuidFromString.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\BrickMathCalculator' => $vendorDir . '/ramsey/uuid/src/Math/BrickMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\CalculatorInterface' => $vendorDir . '/ramsey/uuid/src/Math/CalculatorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\RoundingMode' => $vendorDir . '/ramsey/uuid/src/Math/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Fields' => $vendorDir . '/ramsey/uuid/src/Nonstandard/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Uuid' => $vendorDir . '/ramsey/uuid/src/Nonstandard/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidBuilder' => $vendorDir . '/ramsey/uuid/src/Nonstandard/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidV6' => $vendorDir . '/ramsey/uuid/src/Nonstandard/UuidV6.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\DceSecurityProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/DceSecurityProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Dce\\SystemDceSecurityProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\NodeProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/NodeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\FallbackNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\NodeProviderCollection' => $vendorDir . '/ramsey/uuid/src/Provider/Node/NodeProviderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\RandomNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/RandomNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\StaticNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/StaticNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\SystemNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/SystemNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\TimeProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/TimeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\FixedTimeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Time/FixedTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\SystemTimeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Time/SystemTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Fields' => $vendorDir . '/ramsey/uuid/src/Rfc4122/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\FieldsInterface' => $vendorDir . '/ramsey/uuid/src/Rfc4122/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/NilTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilUuid' => $vendorDir . '/ramsey/uuid/src/Rfc4122/NilUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidBuilder' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidInterface' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV1' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV1.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV2' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV3' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV4' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV5' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Validator' => $vendorDir . '/ramsey/uuid/src/Rfc4122/Validator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VariantTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/VariantTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VersionTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/VersionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Decimal' => $vendorDir . '/ramsey/uuid/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Hexadecimal' => $vendorDir . '/ramsey/uuid/src/Type/Hexadecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Integer' => $vendorDir . '/ramsey/uuid/src/Type/Integer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\NumberInterface' => $vendorDir . '/ramsey/uuid/src/Type/NumberInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Time' => $vendorDir . '/ramsey/uuid/src/Type/Time.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\TypeInterface' => $vendorDir . '/ramsey/uuid/src/Type/TypeInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Uuid' => $vendorDir . '/ramsey/uuid/src/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactory' => $vendorDir . '/ramsey/uuid/src/UuidFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactoryInterface' => $vendorDir . '/ramsey/uuid/src/UuidFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidInterface' => $vendorDir . '/ramsey/uuid/src/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\GenericValidator' => $vendorDir . '/ramsey/uuid/src/Validator/GenericValidator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\ValidatorInterface' => $vendorDir . '/ramsey/uuid/src/Validator/ValidatorInterface.php', 'ReturnTypeWillChange' => $vendorDir . '/symfony/polyfill-php81/Resources/stubs/ReturnTypeWillChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Abstraction' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Expression' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Expression.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Literal' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Literal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Variable' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Variable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Abstraction' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Named' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/Named.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\UnNamed' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/UnNamed.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Parser' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\UriTemplate' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/UriTemplate.php', 'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Ctype\\Ctype' => $vendorDir . '/symfony/polyfill-ctype/Ctype.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\Php80' => $vendorDir . '/symfony/polyfill-php80/Php80.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\PhpToken' => $vendorDir . '/symfony/polyfill-php80/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php81\\Php81' => $vendorDir . '/symfony/polyfill-php81/Php81.php', 'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'ValueError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/ValueError.php'); +return array('Attribute' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigDecimal' => $vendorDir . '/brick/math/src/BigDecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigInteger' => $vendorDir . '/brick/math/src/BigInteger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigNumber' => $vendorDir . '/brick/math/src/BigNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigRational' => $vendorDir . '/brick/math/src/BigRational.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\DivisionByZeroException' => $vendorDir . '/brick/math/src/Exception/DivisionByZeroException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\IntegerOverflowException' => $vendorDir . '/brick/math/src/Exception/IntegerOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\MathException' => $vendorDir . '/brick/math/src/Exception/MathException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NegativeNumberException' => $vendorDir . '/brick/math/src/Exception/NegativeNumberException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NumberFormatException' => $vendorDir . '/brick/math/src/Exception/NumberFormatException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\RoundingNecessaryException' => $vendorDir . '/brick/math/src/Exception/RoundingNecessaryException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator' => $vendorDir . '/brick/math/src/Internal/Calculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\BcMathCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/BcMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\GmpCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/GmpCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\NativeCalculator' => $vendorDir . '/brick/math/src/Internal/Calculator/NativeCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\RoundingMode' => $vendorDir . '/brick/math/src/RoundingMode.php', 'CURLStringFile' => $vendorDir . '/symfony/polyfill-php81/Resources/stubs/CURLStringFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\BeforeValidException' => $vendorDir . '/firebase/php-jwt/src/BeforeValidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\CachedKeySet' => $vendorDir . '/firebase/php-jwt/src/CachedKeySet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\ExpiredException' => $vendorDir . '/firebase/php-jwt/src/ExpiredException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWK' => $vendorDir . '/firebase/php-jwt/src/JWK.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWT' => $vendorDir . '/firebase/php-jwt/src/JWT.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWTExceptionWithPayloadInterface' => $vendorDir . '/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\Key' => $vendorDir . '/firebase/php-jwt/src/Key.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\SignatureInvalidException' => $vendorDir . '/firebase/php-jwt/src/SignatureInvalidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\ApiCore\\Testing\\Mocks' => $vendorDir . '/google/gax/metadata/ApiCore/Testing/Mocks.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Annotations' => $vendorDir . '/google/common-protos/metadata/Api/Annotations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Auth' => $vendorDir . '/google/common-protos/metadata/Api/Auth.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Backend' => $vendorDir . '/google/common-protos/metadata/Api/Backend.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Billing' => $vendorDir . '/google/common-protos/metadata/Api/Billing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Client' => $vendorDir . '/google/common-protos/metadata/Api/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\ConfigChange' => $vendorDir . '/google/common-protos/metadata/Api/ConfigChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Consumer' => $vendorDir . '/google/common-protos/metadata/Api/Consumer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Context' => $vendorDir . '/google/common-protos/metadata/Api/Context.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Control' => $vendorDir . '/google/common-protos/metadata/Api/Control.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Distribution' => $vendorDir . '/google/common-protos/metadata/Api/Distribution.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Documentation' => $vendorDir . '/google/common-protos/metadata/Api/Documentation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Endpoint' => $vendorDir . '/google/common-protos/metadata/Api/Endpoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\ErrorReason' => $vendorDir . '/google/common-protos/metadata/Api/ErrorReason.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\FieldBehavior' => $vendorDir . '/google/common-protos/metadata/Api/FieldBehavior.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\FieldInfo' => $vendorDir . '/google/common-protos/metadata/Api/FieldInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Http' => $vendorDir . '/google/common-protos/metadata/Api/Http.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Httpbody' => $vendorDir . '/google/common-protos/metadata/Api/Httpbody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Label' => $vendorDir . '/google/common-protos/metadata/Api/Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\LaunchStage' => $vendorDir . '/google/common-protos/metadata/Api/LaunchStage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Log' => $vendorDir . '/google/common-protos/metadata/Api/Log.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Logging' => $vendorDir . '/google/common-protos/metadata/Api/Logging.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Metric' => $vendorDir . '/google/common-protos/metadata/Api/Metric.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\MonitoredResource' => $vendorDir . '/google/common-protos/metadata/Api/MonitoredResource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Monitoring' => $vendorDir . '/google/common-protos/metadata/Api/Monitoring.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Policy' => $vendorDir . '/google/common-protos/metadata/Api/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Quota' => $vendorDir . '/google/common-protos/metadata/Api/Quota.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Resource' => $vendorDir . '/google/common-protos/metadata/Api/Resource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Routing' => $vendorDir . '/google/common-protos/metadata/Api/Routing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Service' => $vendorDir . '/google/common-protos/metadata/Api/Service.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\SourceInfo' => $vendorDir . '/google/common-protos/metadata/Api/SourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\SystemParameter' => $vendorDir . '/google/common-protos/metadata/Api/SystemParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Usage' => $vendorDir . '/google/common-protos/metadata/Api/Usage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Visibility' => $vendorDir . '/google/common-protos/metadata/Api/Visibility.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\ExtendedOperations' => $vendorDir . '/google/common-protos/metadata/Cloud/ExtendedOperations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\Location\\Locations' => $vendorDir . '/google/common-protos/metadata/Cloud/Location/Locations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\IamPolicy' => $vendorDir . '/google/common-protos/metadata/Iam/V1/IamPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Logging\\AuditData' => $vendorDir . '/google/common-protos/metadata/Iam/V1/Logging/AuditData.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Options' => $vendorDir . '/google/common-protos/metadata/Iam/V1/Options.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Policy' => $vendorDir . '/google/common-protos/metadata/Iam/V1/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\Type\\HttpRequest' => $vendorDir . '/google/common-protos/metadata/Logging/Type/HttpRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\Type\\LogSeverity' => $vendorDir . '/google/common-protos/metadata/Logging/Type/LogSeverity.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Longrunning\\Operations' => $vendorDir . '/google/longrunning/metadata/Longrunning/Operations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Any' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Any.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Api' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Duration' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\FieldMask' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/FieldMask.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\GPBEmpty' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/GPBEmpty.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Internal\\Descriptor' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Internal/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\SourceContext' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/SourceContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Struct' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Struct.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Timestamp' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Type' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Wrappers' => $vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Wrappers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Code' => $vendorDir . '/google/common-protos/metadata/Rpc/Code.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Context\\AttributeContext' => $vendorDir . '/google/common-protos/metadata/Rpc/Context/AttributeContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Context\\AuditContext' => $vendorDir . '/google/common-protos/metadata/Rpc/Context/AuditContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\ErrorDetails' => $vendorDir . '/google/common-protos/metadata/Rpc/ErrorDetails.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Status' => $vendorDir . '/google/common-protos/metadata/Rpc/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\CalendarPeriod' => $vendorDir . '/google/common-protos/metadata/Type/CalendarPeriod.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Color' => $vendorDir . '/google/common-protos/metadata/Type/Color.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Date' => $vendorDir . '/google/common-protos/metadata/Type/Date.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Datetime' => $vendorDir . '/google/common-protos/metadata/Type/Datetime.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Dayofweek' => $vendorDir . '/google/common-protos/metadata/Type/Dayofweek.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Decimal' => $vendorDir . '/google/common-protos/metadata/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Expr' => $vendorDir . '/google/common-protos/metadata/Type/Expr.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Fraction' => $vendorDir . '/google/common-protos/metadata/Type/Fraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Interval' => $vendorDir . '/google/common-protos/metadata/Type/Interval.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Latlng' => $vendorDir . '/google/common-protos/metadata/Type/Latlng.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\LocalizedText' => $vendorDir . '/google/common-protos/metadata/Type/LocalizedText.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Money' => $vendorDir . '/google/common-protos/metadata/Type/Money.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Month' => $vendorDir . '/google/common-protos/metadata/Type/Month.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\PhoneNumber' => $vendorDir . '/google/common-protos/metadata/Type/PhoneNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\PostalAddress' => $vendorDir . '/google/common-protos/metadata/Type/PostalAddress.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Quaternion' => $vendorDir . '/google/common-protos/metadata/Type/Quaternion.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Timeofday' => $vendorDir . '/google/common-protos/metadata/Type/Timeofday.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\GrpcGcp' => $vendorDir . '/google/grpc-gcp/src/generated/GPBMetadata/GrpcGcp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\AgentHeader' => $vendorDir . '/google/gax/src/AgentHeader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ApiException' => $vendorDir . '/google/gax/src/ApiException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ApiStatus' => $vendorDir . '/google/gax/src/ApiStatus.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ArrayTrait' => $vendorDir . '/google/gax/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\BidiStream' => $vendorDir . '/google/gax/src/BidiStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Call' => $vendorDir . '/google/gax/src/Call.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ClientOptionsTrait' => $vendorDir . '/google/gax/src/ClientOptionsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ClientStream' => $vendorDir . '/google/gax/src/ClientStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\CredentialsWrapper' => $vendorDir . '/google/gax/src/CredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\FixedSizeCollection' => $vendorDir . '/google/gax/src/FixedSizeCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GPBLabel' => $vendorDir . '/google/gax/src/GPBLabel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GPBType' => $vendorDir . '/google/gax/src/GPBType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GapicClientTrait' => $vendorDir . '/google/gax/src/GapicClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GrpcSupportTrait' => $vendorDir . '/google/gax/src/GrpcSupportTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\InsecureCredentialsWrapper' => $vendorDir . '/google/gax/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\Gapic\\OperationsGapicClient' => $vendorDir . '/google/longrunning/src/ApiCore/LongRunning/Gapic/OperationsGapicClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\OperationsClient' => $vendorDir . '/google/longrunning/src/ApiCore/LongRunning/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\CredentialsWrapperMiddleware' => $vendorDir . '/google/gax/src/Middleware/CredentialsWrapperMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\FixedHeaderMiddleware' => $vendorDir . '/google/gax/src/Middleware/FixedHeaderMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\MiddlewareInterface' => $vendorDir . '/google/gax/src/Middleware/MiddlewareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\OperationsMiddleware' => $vendorDir . '/google/gax/src/Middleware/OperationsMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\OptionsFilterMiddleware' => $vendorDir . '/google/gax/src/Middleware/OptionsFilterMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\PagedMiddleware' => $vendorDir . '/google/gax/src/Middleware/PagedMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\ResponseMetadataMiddleware' => $vendorDir . '/google/gax/src/Middleware/ResponseMetadataMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\RetryMiddleware' => $vendorDir . '/google/gax/src/Middleware/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\OperationResponse' => $vendorDir . '/google/gax/src/OperationResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\CallOptions' => $vendorDir . '/google/gax/src/Options/CallOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\ClientOptions' => $vendorDir . '/google/gax/src/Options/ClientOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\OptionsTrait' => $vendorDir . '/google/gax/src/Options/OptionsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions' => $vendorDir . '/google/gax/src/Options/TransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\GrpcFallbackTransportOptions' => $vendorDir . '/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\GrpcTransportOptions' => $vendorDir . '/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\RestTransportOptions' => $vendorDir . '/google/gax/src/Options/TransportOptions/RestTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Page' => $vendorDir . '/google/gax/src/Page.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PageStreamingDescriptor' => $vendorDir . '/google/gax/src/PageStreamingDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PagedListResponse' => $vendorDir . '/google/gax/src/PagedListResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PathTemplate' => $vendorDir . '/google/gax/src/PathTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PollingTrait' => $vendorDir . '/google/gax/src/PollingTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RequestBuilder' => $vendorDir . '/google/gax/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RequestParamsHeaderDescriptor' => $vendorDir . '/google/gax/src/RequestParamsHeaderDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceHelperTrait' => $vendorDir . '/google/gax/src/ResourceHelperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\AbsoluteResourceTemplate' => $vendorDir . '/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\Parser' => $vendorDir . '/google/gax/src/ResourceTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\RelativeResourceTemplate' => $vendorDir . '/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\ResourceTemplateInterface' => $vendorDir . '/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\Segment' => $vendorDir . '/google/gax/src/ResourceTemplate/Segment.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RetrySettings' => $vendorDir . '/google/gax/src/RetrySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Serializer' => $vendorDir . '/google/gax/src/Serializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServerStream' => $vendorDir . '/google/gax/src/ServerStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServerStreamingCallInterface' => $vendorDir . '/google/gax/src/ServerStreamingCallInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServiceAddressTrait' => $vendorDir . '/google/gax/src/ServiceAddressTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\GeneratedTest' => $vendorDir . '/google/gax/src/Testing/GeneratedTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MessageAwareArrayComparator' => $vendorDir . '/google/gax/src/Testing/MessageAwareArrayComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MessageAwareExporter' => $vendorDir . '/google/gax/src/Testing/MessageAwareExporter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockBidiStreamingCall' => $vendorDir . '/google/gax/src/Testing/MockBidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockClientStreamingCall' => $vendorDir . '/google/gax/src/Testing/MockClientStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockGrpcTransport' => $vendorDir . '/google/gax/src/Testing/MockGrpcTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockRequest' => $vendorDir . '/google/gax/src/Testing/MockRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockRequestBody' => $vendorDir . '/google/gax/src/Testing/MockRequestBody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockResponse' => $vendorDir . '/google/gax/src/Testing/MockResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockServerStreamingCall' => $vendorDir . '/google/gax/src/Testing/MockServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockStatus' => $vendorDir . '/google/gax/src/Testing/MockStatus.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockStubTrait' => $vendorDir . '/google/gax/src/Testing/MockStubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockTransport' => $vendorDir . '/google/gax/src/Testing/MockTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockUnaryCall' => $vendorDir . '/google/gax/src/Testing/MockUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ProtobufGPBEmptyComparator' => $vendorDir . '/google/gax/src/Testing/ProtobufGPBEmptyComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ProtobufMessageComparator' => $vendorDir . '/google/gax/src/Testing/ProtobufMessageComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ReceivedRequest' => $vendorDir . '/google/gax/src/Testing/ReceivedRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\SerializationTrait' => $vendorDir . '/google/gax/src/Testing/SerializationTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\GrpcFallbackTransport' => $vendorDir . '/google/gax/src/Transport/GrpcFallbackTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\GrpcTransport' => $vendorDir . '/google/gax/src/Transport/GrpcTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingCall' => $vendorDir . '/google/gax/src/Transport/Grpc/ForwardingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingServerStreamingCall' => $vendorDir . '/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingUnaryCall' => $vendorDir . '/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ServerStreamingCallWrapper' => $vendorDir . '/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\UnaryInterceptorInterface' => $vendorDir . '/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\HttpUnaryTransportTrait' => $vendorDir . '/google/gax/src/Transport/HttpUnaryTransportTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\RestTransport' => $vendorDir . '/google/gax/src/Transport/RestTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Rest\\JsonStreamDecoder' => $vendorDir . '/google/gax/src/Transport/Rest/JsonStreamDecoder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Rest\\RestServerStreamingCall' => $vendorDir . '/google/gax/src/Transport/Rest/RestServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\TransportInterface' => $vendorDir . '/google/gax/src/Transport/TransportInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\UriTrait' => $vendorDir . '/google/gax/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ValidationException' => $vendorDir . '/google/gax/src/ValidationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ValidationTrait' => $vendorDir . '/google/gax/src/ValidationTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Version' => $vendorDir . '/google/gax/src/Version.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Advice' => $vendorDir . '/google/common-protos/src/Api/Advice.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthProvider' => $vendorDir . '/google/common-protos/src/Api/AuthProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthRequirement' => $vendorDir . '/google/common-protos/src/Api/AuthRequirement.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Authentication' => $vendorDir . '/google/common-protos/src/Api/Authentication.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthenticationRule' => $vendorDir . '/google/common-protos/src/Api/AuthenticationRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Backend' => $vendorDir . '/google/common-protos/src/Api/Backend.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\BackendRule' => $vendorDir . '/google/common-protos/src/Api/BackendRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\BackendRule\\PathTranslation' => $vendorDir . '/google/common-protos/src/Api/BackendRule/PathTranslation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Billing' => $vendorDir . '/google/common-protos/src/Api/Billing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Billing\\BillingDestination' => $vendorDir . '/google/common-protos/src/Api/Billing/BillingDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ChangeType' => $vendorDir . '/google/common-protos/src/Api/ChangeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibraryDestination' => $vendorDir . '/google/common-protos/src/Api/ClientLibraryDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibraryOrganization' => $vendorDir . '/google/common-protos/src/Api/ClientLibraryOrganization.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibrarySettings' => $vendorDir . '/google/common-protos/src/Api/ClientLibrarySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CommonLanguageSettings' => $vendorDir . '/google/common-protos/src/Api/CommonLanguageSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ConfigChange' => $vendorDir . '/google/common-protos/src/Api/ConfigChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Context' => $vendorDir . '/google/common-protos/src/Api/Context.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ContextRule' => $vendorDir . '/google/common-protos/src/Api/ContextRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Control' => $vendorDir . '/google/common-protos/src/Api/Control.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CppSettings' => $vendorDir . '/google/common-protos/src/Api/CppSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CustomHttpPattern' => $vendorDir . '/google/common-protos/src/Api/CustomHttpPattern.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution' => $vendorDir . '/google/common-protos/src/Api/Distribution.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions' => $vendorDir . '/google/common-protos/src/Api/Distribution/BucketOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Explicit' => $vendorDir . '/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Exponential' => $vendorDir . '/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Linear' => $vendorDir . '/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\Exemplar' => $vendorDir . '/google/common-protos/src/Api/Distribution/Exemplar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\Range' => $vendorDir . '/google/common-protos/src/Api/Distribution/Range.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Documentation' => $vendorDir . '/google/common-protos/src/Api/Documentation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\DocumentationRule' => $vendorDir . '/google/common-protos/src/Api/DocumentationRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\DotnetSettings' => $vendorDir . '/google/common-protos/src/Api/DotnetSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Endpoint' => $vendorDir . '/google/common-protos/src/Api/Endpoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ErrorReason' => $vendorDir . '/google/common-protos/src/Api/ErrorReason.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldBehavior' => $vendorDir . '/google/common-protos/src/Api/FieldBehavior.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldInfo' => $vendorDir . '/google/common-protos/src/Api/FieldInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldInfo\\Format' => $vendorDir . '/google/common-protos/src/Api/FieldInfo/Format.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldPolicy' => $vendorDir . '/google/common-protos/src/Api/FieldPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\GoSettings' => $vendorDir . '/google/common-protos/src/Api/GoSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Http' => $vendorDir . '/google/common-protos/src/Api/Http.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\HttpBody' => $vendorDir . '/google/common-protos/src/Api/HttpBody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\HttpRule' => $vendorDir . '/google/common-protos/src/Api/HttpRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\JavaSettings' => $vendorDir . '/google/common-protos/src/Api/JavaSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\JwtLocation' => $vendorDir . '/google/common-protos/src/Api/JwtLocation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LabelDescriptor' => $vendorDir . '/google/common-protos/src/Api/LabelDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LabelDescriptor\\ValueType' => $vendorDir . '/google/common-protos/src/Api/LabelDescriptor/ValueType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LaunchStage' => $vendorDir . '/google/common-protos/src/Api/LaunchStage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LogDescriptor' => $vendorDir . '/google/common-protos/src/Api/LogDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Logging' => $vendorDir . '/google/common-protos/src/Api/Logging.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Logging\\LoggingDestination' => $vendorDir . '/google/common-protos/src/Api/Logging/LoggingDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodPolicy' => $vendorDir . '/google/common-protos/src/Api/MethodPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodSettings' => $vendorDir . '/google/common-protos/src/Api/MethodSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodSettings\\LongRunning' => $vendorDir . '/google/common-protos/src/Api/MethodSettings/LongRunning.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Metric' => $vendorDir . '/google/common-protos/src/Api/Metric.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor' => $vendorDir . '/google/common-protos/src/Api/MetricDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\MetricDescriptorMetadata' => $vendorDir . '/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\MetricKind' => $vendorDir . '/google/common-protos/src/Api/MetricDescriptor/MetricKind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\ValueType' => $vendorDir . '/google/common-protos/src/Api/MetricDescriptor/ValueType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricRule' => $vendorDir . '/google/common-protos/src/Api/MetricRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResource' => $vendorDir . '/google/common-protos/src/Api/MonitoredResource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResourceDescriptor' => $vendorDir . '/google/common-protos/src/Api/MonitoredResourceDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResourceMetadata' => $vendorDir . '/google/common-protos/src/Api/MonitoredResourceMetadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Monitoring' => $vendorDir . '/google/common-protos/src/Api/Monitoring.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Monitoring\\MonitoringDestination' => $vendorDir . '/google/common-protos/src/Api/Monitoring/MonitoringDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\NodeSettings' => $vendorDir . '/google/common-protos/src/Api/NodeSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\OAuthRequirements' => $vendorDir . '/google/common-protos/src/Api/OAuthRequirements.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Page' => $vendorDir . '/google/common-protos/src/Api/Page.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\PhpSettings' => $vendorDir . '/google/common-protos/src/Api/PhpSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ProjectProperties' => $vendorDir . '/google/common-protos/src/Api/ProjectProperties.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Property' => $vendorDir . '/google/common-protos/src/Api/Property.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Property\\PropertyType' => $vendorDir . '/google/common-protos/src/Api/Property/PropertyType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Publishing' => $vendorDir . '/google/common-protos/src/Api/Publishing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\PythonSettings' => $vendorDir . '/google/common-protos/src/Api/PythonSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Quota' => $vendorDir . '/google/common-protos/src/Api/Quota.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\QuotaLimit' => $vendorDir . '/google/common-protos/src/Api/QuotaLimit.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor' => $vendorDir . '/google/common-protos/src/Api/ResourceDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor\\History' => $vendorDir . '/google/common-protos/src/Api/ResourceDescriptor/History.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor\\Style' => $vendorDir . '/google/common-protos/src/Api/ResourceDescriptor/Style.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceReference' => $vendorDir . '/google/common-protos/src/Api/ResourceReference.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RoutingParameter' => $vendorDir . '/google/common-protos/src/Api/RoutingParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RoutingRule' => $vendorDir . '/google/common-protos/src/Api/RoutingRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RubySettings' => $vendorDir . '/google/common-protos/src/Api/RubySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Service' => $vendorDir . '/google/common-protos/src/Api/Service.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SourceInfo' => $vendorDir . '/google/common-protos/src/Api/SourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameter' => $vendorDir . '/google/common-protos/src/Api/SystemParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameterRule' => $vendorDir . '/google/common-protos/src/Api/SystemParameterRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameters' => $vendorDir . '/google/common-protos/src/Api/SystemParameters.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Usage' => $vendorDir . '/google/common-protos/src/Api/Usage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\UsageRule' => $vendorDir . '/google/common-protos/src/Api/UsageRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Visibility' => $vendorDir . '/google/common-protos/src/Api/Visibility.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\VisibilityRule' => $vendorDir . '/google/common-protos/src/Api/VisibilityRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\AccessToken' => $vendorDir . '/google/auth/src/AccessToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ApplicationDefaultCredentials' => $vendorDir . '/google/auth/src/ApplicationDefaultCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CacheTrait' => $vendorDir . '/google/auth/src/CacheTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\InvalidArgumentException' => $vendorDir . '/google/auth/src/Cache/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\Item' => $vendorDir . '/google/auth/src/Cache/Item.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\MemoryCacheItemPool' => $vendorDir . '/google/auth/src/Cache/MemoryCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\SysVCacheItemPool' => $vendorDir . '/google/auth/src/Cache/SysVCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\TypedItem' => $vendorDir . '/google/auth/src/Cache/TypedItem.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\AwsNativeSource' => $vendorDir . '/google/auth/src/CredentialSource/AwsNativeSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\FileSource' => $vendorDir . '/google/auth/src/CredentialSource/FileSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\UrlSource' => $vendorDir . '/google/auth/src/CredentialSource/UrlSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialsLoader' => $vendorDir . '/google/auth/src/CredentialsLoader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\AppIdentityCredentials' => $vendorDir . '/google/auth/src/Credentials/AppIdentityCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ExternalAccountCredentials' => $vendorDir . '/google/auth/src/Credentials/ExternalAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\GCECredentials' => $vendorDir . '/google/auth/src/Credentials/GCECredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\IAMCredentials' => $vendorDir . '/google/auth/src/Credentials/IAMCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ImpersonatedServiceAccountCredentials' => $vendorDir . '/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\InsecureCredentials' => $vendorDir . '/google/auth/src/Credentials/InsecureCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountCredentials' => $vendorDir . '/google/auth/src/Credentials/ServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountJwtAccessCredentials' => $vendorDir . '/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\UserRefreshCredentials' => $vendorDir . '/google/auth/src/Credentials/UserRefreshCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ExternalAccountCredentialSourceInterface' => $vendorDir . '/google/auth/src/ExternalAccountCredentialSourceInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenCache' => $vendorDir . '/google/auth/src/FetchAuthTokenCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenInterface' => $vendorDir . '/google/auth/src/FetchAuthTokenInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GCECache' => $vendorDir . '/google/auth/src/GCECache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetQuotaProjectInterface' => $vendorDir . '/google/auth/src/GetQuotaProjectInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetUniverseDomainInterface' => $vendorDir . '/google/auth/src/GetUniverseDomainInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle6HttpHandler' => $vendorDir . '/google/auth/src/HttpHandler/Guzzle6HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle7HttpHandler' => $vendorDir . '/google/auth/src/HttpHandler/Guzzle7HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpClientCache' => $vendorDir . '/google/auth/src/HttpHandler/HttpClientCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpHandlerFactory' => $vendorDir . '/google/auth/src/HttpHandler/HttpHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Iam' => $vendorDir . '/google/auth/src/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\IamSignerTrait' => $vendorDir . '/google/auth/src/IamSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\AuthTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/AuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ProxyAuthTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/ProxyAuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ScopedAccessTokenMiddleware' => $vendorDir . '/google/auth/src/Middleware/ScopedAccessTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\SimpleMiddleware' => $vendorDir . '/google/auth/src/Middleware/SimpleMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\OAuth2' => $vendorDir . '/google/auth/src/OAuth2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ProjectIdProviderInterface' => $vendorDir . '/google/auth/src/ProjectIdProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ServiceAccountSignerTrait' => $vendorDir . '/google/auth/src/ServiceAccountSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\SignBlobInterface' => $vendorDir . '/google/auth/src/SignBlobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataInterface' => $vendorDir . '/google/auth/src/UpdateMetadataInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataTrait' => $vendorDir . '/google/auth/src/UpdateMetadataTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\AnonymousCredentials' => $vendorDir . '/google/cloud-core/src/AnonymousCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ApiHelperTrait' => $vendorDir . '/google/cloud-core/src/ApiHelperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ArrayTrait' => $vendorDir . '/google/cloud-core/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemon' => $vendorDir . '/google/cloud-core/src/Batch/BatchDaemon.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemonTrait' => $vendorDir . '/google/cloud-core/src/Batch/BatchDaemonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchJob' => $vendorDir . '/google/cloud-core/src/Batch/BatchJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchRunner' => $vendorDir . '/google/cloud-core/src/Batch/BatchRunner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchTrait' => $vendorDir . '/google/cloud-core/src/Batch/BatchTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ClosureSerializerInterface' => $vendorDir . '/google/cloud-core/src/Batch/ClosureSerializerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ConfigStorageInterface' => $vendorDir . '/google/cloud-core/src/Batch/ConfigStorageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\HandleFailureTrait' => $vendorDir . '/google/cloud-core/src/Batch/HandleFailureTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InMemoryConfigStorage' => $vendorDir . '/google/cloud-core/src/Batch/InMemoryConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InterruptTrait' => $vendorDir . '/google/cloud-core/src/Batch/InterruptTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobConfig' => $vendorDir . '/google/cloud-core/src/Batch/JobConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobInterface' => $vendorDir . '/google/cloud-core/src/Batch/JobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobTrait' => $vendorDir . '/google/cloud-core/src/Batch/JobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\OpisClosureSerializer' => $vendorDir . '/google/cloud-core/src/Batch/OpisClosureSerializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ProcessItemInterface' => $vendorDir . '/google/cloud-core/src/Batch/ProcessItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\QueueOverflowException' => $vendorDir . '/google/cloud-core/src/Batch/QueueOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\Retry' => $vendorDir . '/google/cloud-core/src/Batch/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SerializableClientTrait' => $vendorDir . '/google/cloud-core/src/Batch/SerializableClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJob' => $vendorDir . '/google/cloud-core/src/Batch/SimpleJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJobTrait' => $vendorDir . '/google/cloud-core/src/Batch/SimpleJobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvConfigStorage' => $vendorDir . '/google/cloud-core/src/Batch/SysvConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvProcessor' => $vendorDir . '/google/cloud-core/src/Batch/SysvProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Blob' => $vendorDir . '/google/cloud-core/src/Blob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\CallTrait' => $vendorDir . '/google/cloud-core/src/CallTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ClientTrait' => $vendorDir . '/google/cloud-core/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata' => $vendorDir . '/google/cloud-core/src/Compute/Metadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\HttpHandlerReader' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/HttpHandlerReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\ReaderInterface' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/ReaderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\StreamReader' => $vendorDir . '/google/cloud-core/src/Compute/Metadata/Readers/StreamReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ConcurrencyControlTrait' => $vendorDir . '/google/cloud-core/src/ConcurrencyControlTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DebugInfoTrait' => $vendorDir . '/google/cloud-core/src/DebugInfoTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DetectProjectIdTrait' => $vendorDir . '/google/cloud-core/src/DetectProjectIdTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Duration' => $vendorDir . '/google/cloud-core/src/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\EmulatorTrait' => $vendorDir . '/google/cloud-core/src/EmulatorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\AbortedException' => $vendorDir . '/google/cloud-core/src/Exception/AbortedException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\BadRequestException' => $vendorDir . '/google/cloud-core/src/Exception/BadRequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ConflictException' => $vendorDir . '/google/cloud-core/src/Exception/ConflictException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\DeadlineExceededException' => $vendorDir . '/google/cloud-core/src/Exception/DeadlineExceededException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\FailedPreconditionException' => $vendorDir . '/google/cloud-core/src/Exception/FailedPreconditionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\GoogleException' => $vendorDir . '/google/cloud-core/src/Exception/GoogleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\NotFoundException' => $vendorDir . '/google/cloud-core/src/Exception/NotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServerException' => $vendorDir . '/google/cloud-core/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServiceException' => $vendorDir . '/google/cloud-core/src/Exception/ServiceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ExponentialBackoff' => $vendorDir . '/google/cloud-core/src/ExponentialBackoff.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GeoPoint' => $vendorDir . '/google/cloud-core/src/GeoPoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcRequestWrapper' => $vendorDir . '/google/cloud-core/src/GrpcRequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcTrait' => $vendorDir . '/google/cloud-core/src/GrpcTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\Iam' => $vendorDir . '/google/cloud-core/src/Iam/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamConnectionInterface' => $vendorDir . '/google/cloud-core/src/Iam/IamConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamManager' => $vendorDir . '/google/cloud-core/src/Iam/IamManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\PolicyBuilder' => $vendorDir . '/google/cloud-core/src/Iam/PolicyBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\InsecureCredentialsWrapper' => $vendorDir . '/google/cloud-core/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Int64' => $vendorDir . '/google/cloud-core/src/Int64.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIterator' => $vendorDir . '/google/cloud-core/src/Iterator/ItemIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIteratorTrait' => $vendorDir . '/google/cloud-core/src/Iterator/ItemIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIterator' => $vendorDir . '/google/cloud-core/src/Iterator/PageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIteratorTrait' => $vendorDir . '/google/cloud-core/src/Iterator/PageIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\JsonTrait' => $vendorDir . '/google/cloud-core/src/JsonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\FlockLock' => $vendorDir . '/google/cloud-core/src/Lock/FlockLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockInterface' => $vendorDir . '/google/cloud-core/src/Lock/LockInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockTrait' => $vendorDir . '/google/cloud-core/src/Lock/LockTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SemaphoreLock' => $vendorDir . '/google/cloud-core/src/Lock/SemaphoreLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SymfonyLockAdapter' => $vendorDir . '/google/cloud-core/src/Lock/SymfonyLockAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatter' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV2' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV3' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandler' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerFactory' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV2' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV3' => $vendorDir . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\FormatterTrait' => $vendorDir . '/google/cloud-core/src/Logger/FormatterTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LROTrait' => $vendorDir . '/google/cloud-core/src/LongRunning/LROTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningConnectionInterface' => $vendorDir . '/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningOperation' => $vendorDir . '/google/cloud-core/src/LongRunning/LongRunningOperation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\OperationResponseTrait' => $vendorDir . '/google/cloud-core/src/LongRunning/OperationResponseTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\PhpArray' => $vendorDir . '/google/cloud-core/src/PhpArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\CloudRunMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/CloudRunMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\EmptyMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/EmptyMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEFlexMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEFlexMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEStandardMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/GAEStandardMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderInterface' => $vendorDir . '/google/cloud-core/src/Report/MetadataProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderUtils' => $vendorDir . '/google/cloud-core/src/Report/MetadataProviderUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\SimpleMetadataProvider' => $vendorDir . '/google/cloud-core/src/Report/SimpleMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestBuilder' => $vendorDir . '/google/cloud-core/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestHandler' => $vendorDir . '/google/cloud-core/src/RequestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestProcessorTrait' => $vendorDir . '/google/cloud-core/src/RequestProcessorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapper' => $vendorDir . '/google/cloud-core/src/RequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapperTrait' => $vendorDir . '/google/cloud-core/src/RequestWrapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RestTrait' => $vendorDir . '/google/cloud-core/src/RestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Retry' => $vendorDir . '/google/cloud-core/src/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RetryDeciderTrait' => $vendorDir . '/google/cloud-core/src/RetryDeciderTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ServiceBuilder' => $vendorDir . '/google/cloud-core/src/ServiceBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\SysvTrait' => $vendorDir . '/google/cloud-core/src/SysvTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\ArrayHasSameValuesToken' => $vendorDir . '/google/cloud-core/src/Testing/ArrayHasSameValuesToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\CheckForClassTrait' => $vendorDir . '/google/cloud-core/src/Testing/CheckForClassTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\DatastoreOperationRefreshTrait' => $vendorDir . '/google/cloud-core/src/Testing/DatastoreOperationRefreshTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\FileListFilterIterator' => $vendorDir . '/google/cloud-core/src/Testing/FileListFilterIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GcTestListener' => $vendorDir . '/google/cloud-core/src/Testing/GcTestListener.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GrpcTestTrait' => $vendorDir . '/google/cloud-core/src/Testing/GrpcTestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\KeyPairGenerateTrait' => $vendorDir . '/google/cloud-core/src/Testing/KeyPairGenerateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Lock\\MockValues' => $vendorDir . '/google/cloud-core/src/Testing/Lock/MockValues.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\DescriptionFactory' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/DescriptionFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerFactory' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerV5' => $vendorDir . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\RegexFileFilter' => $vendorDir . '/google/cloud-core/src/Testing/RegexFileFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Container' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Container.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Coverage' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/Coverage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ExcludeFilter' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/ExcludeFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Scanner' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/Scanner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ScannerInterface' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Coverage/ScannerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Fixtures' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Fixtures.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\InvokeResult' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/InvokeResult.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Parser' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Snippet' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/Parser/Snippet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\SnippetTestCase' => $vendorDir . '/google/cloud-core/src/Testing/Snippet/SnippetTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\StubTrait' => $vendorDir . '/google/cloud-core/src/Testing/StubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\DeletionQueue' => $vendorDir . '/google/cloud-core/src/Testing/System/DeletionQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\KeyManager' => $vendorDir . '/google/cloud-core/src/Testing/System/KeyManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\SystemTestCase' => $vendorDir . '/google/cloud-core/src/Testing/System/SystemTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\TestHelpers' => $vendorDir . '/google/cloud-core/src/Testing/TestHelpers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimeTrait' => $vendorDir . '/google/cloud-core/src/TimeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Timestamp' => $vendorDir . '/google/cloud-core/src/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimestampTrait' => $vendorDir . '/google/cloud-core/src/TimestampTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\AbstractUploader' => $vendorDir . '/google/cloud-core/src/Upload/AbstractUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\MultipartUploader' => $vendorDir . '/google/cloud-core/src/Upload/MultipartUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\ResumableUploader' => $vendorDir . '/google/cloud-core/src/Upload/ResumableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\SignedUrlUploader' => $vendorDir . '/google/cloud-core/src/Upload/SignedUrlUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\StreamableUploader' => $vendorDir . '/google/cloud-core/src/Upload/StreamableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\UriTrait' => $vendorDir . '/google/cloud-core/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValidateTrait' => $vendorDir . '/google/cloud-core/src/ValidateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValueMapperTrait' => $vendorDir . '/google/cloud-core/src/ValueMapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\WhitelistTrait' => $vendorDir . '/google/cloud-core/src/WhitelistTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfig' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfigDelta' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfigDelta\\Action' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditLogConfig' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditLogConfig\\LogType' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\Binding' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/Binding.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\BindingDelta' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\BindingDelta\\Action' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\GetIamPolicyRequest' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\GetPolicyOptions' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\Policy' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\PolicyDelta' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\SetIamPolicyRequest' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\TestIamPermissionsRequest' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\TestIamPermissionsResponse' => $vendorDir . '/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\GetLocationRequest' => $vendorDir . '/google/common-protos/src/Cloud/Location/GetLocationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\ListLocationsRequest' => $vendorDir . '/google/common-protos/src/Cloud/Location/ListLocationsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\ListLocationsResponse' => $vendorDir . '/google/common-protos/src/Cloud/Location/ListLocationsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\Location' => $vendorDir . '/google/common-protos/src/Cloud/Location/Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Logging\\Type\\HttpRequest' => $vendorDir . '/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Logging\\Type\\LogSeverity' => $vendorDir . '/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\OperationResponseMapping' => $vendorDir . '/google/common-protos/src/Cloud/OperationResponseMapping.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Acl' => $vendorDir . '/google/cloud-storage/src/Acl.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Bucket' => $vendorDir . '/google/cloud-storage/src/Bucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\ConnectionInterface' => $vendorDir . '/google/cloud-storage/src/Connection/ConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\IamBucket' => $vendorDir . '/google/cloud-storage/src/Connection/IamBucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\Rest' => $vendorDir . '/google/cloud-storage/src/Connection/Rest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\RetryTrait' => $vendorDir . '/google/cloud-storage/src/Connection/RetryTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\CreatedHmacKey' => $vendorDir . '/google/cloud-storage/src/CreatedHmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\EncryptionTrait' => $vendorDir . '/google/cloud-storage/src/EncryptionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\HmacKey' => $vendorDir . '/google/cloud-storage/src/HmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Lifecycle' => $vendorDir . '/google/cloud-storage/src/Lifecycle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Notification' => $vendorDir . '/google/cloud-storage/src/Notification.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectIterator' => $vendorDir . '/google/cloud-storage/src/ObjectIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectPageIterator' => $vendorDir . '/google/cloud-storage/src/ObjectPageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ReadStream' => $vendorDir . '/google/cloud-storage/src/ReadStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\SigningHelper' => $vendorDir . '/google/cloud-storage/src/SigningHelper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageClient' => $vendorDir . '/google/cloud-storage/src/StorageClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageObject' => $vendorDir . '/google/cloud-storage/src/StorageObject.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StreamWrapper' => $vendorDir . '/google/cloud-storage/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\WriteStream' => $vendorDir . '/google/cloud-storage/src/WriteStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\V1\\Logging\\AuditData' => $vendorDir . '/google/common-protos/src/Iam/V1/Logging/AuditData.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\CancelOperationRequest' => $vendorDir . '/google/longrunning/src/LongRunning/CancelOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Client\\OperationsClient' => $vendorDir . '/google/longrunning/src/LongRunning/Client/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\DeleteOperationRequest' => $vendorDir . '/google/longrunning/src/LongRunning/DeleteOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Gapic\\OperationsGapicClient' => $vendorDir . '/google/longrunning/src/LongRunning/Gapic/OperationsGapicClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\GetOperationRequest' => $vendorDir . '/google/longrunning/src/LongRunning/GetOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\ListOperationsRequest' => $vendorDir . '/google/longrunning/src/LongRunning/ListOperationsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\ListOperationsResponse' => $vendorDir . '/google/longrunning/src/LongRunning/ListOperationsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Operation' => $vendorDir . '/google/longrunning/src/LongRunning/Operation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationInfo' => $vendorDir . '/google/longrunning/src/LongRunning/OperationInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationsClient' => $vendorDir . '/google/longrunning/src/LongRunning/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationsGrpcClient' => $vendorDir . '/google/longrunning/src/LongRunning/OperationsGrpcClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\WaitOperationRequest' => $vendorDir . '/google/longrunning/src/LongRunning/WaitOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Any' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Any.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Api' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\BoolValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/BoolValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\BytesValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/BytesValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Descriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\DescriptorPool' => $vendorDir . '/google/protobuf/src/Google/Protobuf/DescriptorPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\DoubleValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/DoubleValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Duration' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Enum' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Enum.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/EnumDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/EnumValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumValueDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/EnumValueDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Field.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FieldDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/FieldDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FieldMask' => $vendorDir . '/google/protobuf/src/Google/Protobuf/FieldMask.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field\\Cardinality' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Field/Cardinality.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field\\Kind' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Field/Kind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field_Cardinality' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Field_Cardinality.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field_Kind' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Field_Kind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FloatValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/FloatValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\GPBEmpty' => $vendorDir . '/google/protobuf/src/Google/Protobuf/GPBEmpty.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Int32Value' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Int32Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Int64Value' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Int64Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\AnyBase' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/AnyBase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\CodedInputStream' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/CodedInputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\CodedOutputStream' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/CodedOutputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\Descriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorPool' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto\\ExtensionRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ExtensionRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto\\ReservedRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto_ExtensionRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ExtensionRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto_ReservedRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumBuilderContext' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumBuilderContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto\\EnumReservedRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto/EnumReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto_EnumReservedRange' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto_EnumReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumValueDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumValueDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumValueOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/EnumValueOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ExtensionRangeOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/ExtensionRangeOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto\\Label' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto\\Type' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto_Label' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto_Type' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions\\CType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/CType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions\\JSType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/JSType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions_CType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_CType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions_JSType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_JSType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptorSet' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions\\OptimizeMode' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions/OptimizeMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions_OptimizeMode' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions_OptimizeMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBDecodeException' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBDecodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBJsonWire' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBJsonWire.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBLabel' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBLabel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBUtil' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBUtil.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBWire' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBWire.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBWireType' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GPBWireType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo\\Annotation' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo/Annotation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo_Annotation' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo_Annotation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GetPublicDescriptorTrait' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/GetPublicDescriptorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\HasPublicDescriptorTrait' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/HasPublicDescriptorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapEntry' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MapEntry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapField' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MapField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapFieldIter' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MapFieldIter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\Message' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MessageBuilderContext' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MessageBuilderContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MessageOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MessageOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MethodDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions\\IdempotencyLevel' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions/IdempotencyLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions_IdempotencyLevel' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions_IdempotencyLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofField' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/OneofField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/OneofOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RawInputStream' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/RawInputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RepeatedField' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RepeatedFieldIter' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ServiceDescriptorProto' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/ServiceDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ServiceOptions' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/ServiceOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo\\Location' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo/Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo_Location' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo_Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\TimestampBase' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/TimestampBase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption\\NamePart' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption/NamePart.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption_NamePart' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption_NamePart.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\ListValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/ListValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Method' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Method.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Mixin' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Mixin.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\NullValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/NullValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\OneofDescriptor' => $vendorDir . '/google/protobuf/src/Google/Protobuf/OneofDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Option' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Option.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\SourceContext' => $vendorDir . '/google/protobuf/src/Google/Protobuf/SourceContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\StringValue' => $vendorDir . '/google/protobuf/src/Google/Protobuf/StringValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Struct' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Struct.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Syntax' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Syntax.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Timestamp' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Type' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\UInt32Value' => $vendorDir . '/google/protobuf/src/Google/Protobuf/UInt32Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\UInt64Value' => $vendorDir . '/google/protobuf/src/Google/Protobuf/UInt64Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Value' => $vendorDir . '/google/protobuf/src/Google/Protobuf/Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\BadRequest' => $vendorDir . '/google/common-protos/src/Rpc/BadRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\BadRequest\\FieldViolation' => $vendorDir . '/google/common-protos/src/Rpc/BadRequest/FieldViolation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Code' => $vendorDir . '/google/common-protos/src/Rpc/Code.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Api' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Auth' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Peer' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Request' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Resource' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Response' => $vendorDir . '/google/common-protos/src/Rpc/Context/AttributeContext/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AuditContext' => $vendorDir . '/google/common-protos/src/Rpc/Context/AuditContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\DebugInfo' => $vendorDir . '/google/common-protos/src/Rpc/DebugInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\ErrorInfo' => $vendorDir . '/google/common-protos/src/Rpc/ErrorInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Help' => $vendorDir . '/google/common-protos/src/Rpc/Help.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Help\\Link' => $vendorDir . '/google/common-protos/src/Rpc/Help/Link.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\LocalizedMessage' => $vendorDir . '/google/common-protos/src/Rpc/LocalizedMessage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\PreconditionFailure' => $vendorDir . '/google/common-protos/src/Rpc/PreconditionFailure.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\PreconditionFailure\\Violation' => $vendorDir . '/google/common-protos/src/Rpc/PreconditionFailure/Violation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\QuotaFailure' => $vendorDir . '/google/common-protos/src/Rpc/QuotaFailure.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\QuotaFailure\\Violation' => $vendorDir . '/google/common-protos/src/Rpc/QuotaFailure/Violation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\RequestInfo' => $vendorDir . '/google/common-protos/src/Rpc/RequestInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\ResourceInfo' => $vendorDir . '/google/common-protos/src/Rpc/ResourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\RetryInfo' => $vendorDir . '/google/common-protos/src/Rpc/RetryInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Status' => $vendorDir . '/google/common-protos/src/Rpc/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\CalendarPeriod' => $vendorDir . '/google/common-protos/src/Type/CalendarPeriod.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Color' => $vendorDir . '/google/common-protos/src/Type/Color.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Date' => $vendorDir . '/google/common-protos/src/Type/Date.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\DateTime' => $vendorDir . '/google/common-protos/src/Type/DateTime.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\DayOfWeek' => $vendorDir . '/google/common-protos/src/Type/DayOfWeek.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Decimal' => $vendorDir . '/google/common-protos/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Expr' => $vendorDir . '/google/common-protos/src/Type/Expr.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Fraction' => $vendorDir . '/google/common-protos/src/Type/Fraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Interval' => $vendorDir . '/google/common-protos/src/Type/Interval.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\LatLng' => $vendorDir . '/google/common-protos/src/Type/LatLng.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\LocalizedText' => $vendorDir . '/google/common-protos/src/Type/LocalizedText.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Money' => $vendorDir . '/google/common-protos/src/Type/Money.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Month' => $vendorDir . '/google/common-protos/src/Type/Month.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PhoneNumber' => $vendorDir . '/google/common-protos/src/Type/PhoneNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PhoneNumber\\ShortCode' => $vendorDir . '/google/common-protos/src/Type/PhoneNumber/ShortCode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PostalAddress' => $vendorDir . '/google/common-protos/src/Type/PostalAddress.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Quaternion' => $vendorDir . '/google/common-protos/src/Type/Quaternion.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\TimeOfDay' => $vendorDir . '/google/common-protos/src/Type/TimeOfDay.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\TimeZone' => $vendorDir . '/google/common-protos/src/Type/TimeZone.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\AbstractCall' => $vendorDir . '/grpc/grpc/src/lib/AbstractCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\BaseStub' => $vendorDir . '/grpc/grpc/src/lib/BaseStub.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\BidiStreamingCall' => $vendorDir . '/grpc/grpc/src/lib/BidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\CallInvoker' => $vendorDir . '/grpc/grpc/src/lib/CallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ClientStreamingCall' => $vendorDir . '/grpc/grpc/src/lib/ClientStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\DefaultCallInvoker' => $vendorDir . '/grpc/grpc/src/lib/DefaultCallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\AffinityConfig' => $vendorDir . '/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\AffinityConfig_Command' => $vendorDir . '/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig_Command.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ApiConfig' => $vendorDir . '/google/grpc-gcp/src/generated/Grpc/Gcp/ApiConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ChannelPoolConfig' => $vendorDir . '/google/grpc-gcp/src/generated/Grpc/Gcp/ChannelPoolConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ChannelRef' => $vendorDir . '/google/grpc-gcp/src/ChannelRef.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\Config' => $vendorDir . '/google/grpc-gcp/src/Config.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\CreatedByDeserializeCheck' => $vendorDir . '/google/grpc-gcp/src/CreatedByDeserializeCheck.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPBidiStreamingCall' => $vendorDir . '/google/grpc-gcp/src/GCPBidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPCallInvoker' => $vendorDir . '/google/grpc-gcp/src/GCPCallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPClientStreamCall' => $vendorDir . '/google/grpc-gcp/src/GCPClientStreamCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPServerStreamCall' => $vendorDir . '/google/grpc-gcp/src/GCPServerStreamCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPUnaryCall' => $vendorDir . '/google/grpc-gcp/src/GCPUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GcpBaseCall' => $vendorDir . '/google/grpc-gcp/src/GcpBaseCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GcpExtensionChannel' => $vendorDir . '/google/grpc-gcp/src/GcpExtensionChannel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\MethodConfig' => $vendorDir . '/google/grpc-gcp/src/generated/Grpc/Gcp/MethodConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Interceptor' => $vendorDir . '/grpc/grpc/src/lib/Interceptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Internal\\InterceptorChannel' => $vendorDir . '/grpc/grpc/src/lib/Internal/InterceptorChannel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\MethodDescriptor' => $vendorDir . '/grpc/grpc/src/lib/MethodDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\RpcServer' => $vendorDir . '/grpc/grpc/src/lib/RpcServer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerCallReader' => $vendorDir . '/grpc/grpc/src/lib/ServerCallReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerCallWriter' => $vendorDir . '/grpc/grpc/src/lib/ServerCallWriter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerContext' => $vendorDir . '/grpc/grpc/src/lib/ServerContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerStreamingCall' => $vendorDir . '/grpc/grpc/src/lib/ServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Status' => $vendorDir . '/grpc/grpc/src/lib/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\UnaryCall' => $vendorDir . '/grpc/grpc/src/lib/UnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizer' => $vendorDir . '/guzzlehttp/guzzle/src/BodySummarizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizerInterface' => $vendorDir . '/guzzlehttp/guzzle/src/BodySummarizerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Client' => $vendorDir . '/guzzlehttp/guzzle/src/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientInterface' => $vendorDir . '/guzzlehttp/guzzle/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientTrait' => $vendorDir . '/guzzlehttp/guzzle/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/CookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJarInterface' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\FileCookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SessionCookieJar' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SetCookie' => $vendorDir . '/guzzlehttp/guzzle/src/Cookie/SetCookie.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\BadResponseException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/BadResponseException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ClientException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ClientException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ConnectException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ConnectException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\GuzzleException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/GuzzleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\InvalidArgumentException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\RequestException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/RequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ServerException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TooManyRedirectsException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TransferException' => $vendorDir . '/guzzlehttp/guzzle/src/Exception/TransferException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\HandlerStack' => $vendorDir . '/guzzlehttp/guzzle/src/HandlerStack.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactory' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactoryInterface' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlMultiHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\EasyHandle' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/EasyHandle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\HeaderProcessor' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\MockHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/MockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\Proxy' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/Proxy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\StreamHandler' => $vendorDir . '/guzzlehttp/guzzle/src/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatter' => $vendorDir . '/guzzlehttp/guzzle/src/MessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatterInterface' => $vendorDir . '/guzzlehttp/guzzle/src/MessageFormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Middleware' => $vendorDir . '/guzzlehttp/guzzle/src/Middleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Pool' => $vendorDir . '/guzzlehttp/guzzle/src/Pool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\PrepareBodyMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\AggregateException' => $vendorDir . '/guzzlehttp/promises/src/AggregateException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\CancellationException' => $vendorDir . '/guzzlehttp/promises/src/CancellationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Coroutine' => $vendorDir . '/guzzlehttp/promises/src/Coroutine.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Create' => $vendorDir . '/guzzlehttp/promises/src/Create.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Each' => $vendorDir . '/guzzlehttp/promises/src/Each.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\EachPromise' => $vendorDir . '/guzzlehttp/promises/src/EachPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\FulfilledPromise' => $vendorDir . '/guzzlehttp/promises/src/FulfilledPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Is' => $vendorDir . '/guzzlehttp/promises/src/Is.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Promise' => $vendorDir . '/guzzlehttp/promises/src/Promise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromiseInterface' => $vendorDir . '/guzzlehttp/promises/src/PromiseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromisorInterface' => $vendorDir . '/guzzlehttp/promises/src/PromisorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectedPromise' => $vendorDir . '/guzzlehttp/promises/src/RejectedPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectionException' => $vendorDir . '/guzzlehttp/promises/src/RejectionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueue' => $vendorDir . '/guzzlehttp/promises/src/TaskQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueueInterface' => $vendorDir . '/guzzlehttp/promises/src/TaskQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Utils' => $vendorDir . '/guzzlehttp/promises/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\AppendStream' => $vendorDir . '/guzzlehttp/psr7/src/AppendStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\BufferStream' => $vendorDir . '/guzzlehttp/psr7/src/BufferStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\CachingStream' => $vendorDir . '/guzzlehttp/psr7/src/CachingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\DroppingStream' => $vendorDir . '/guzzlehttp/psr7/src/DroppingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Exception\\MalformedUriException' => $vendorDir . '/guzzlehttp/psr7/src/Exception/MalformedUriException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\FnStream' => $vendorDir . '/guzzlehttp/psr7/src/FnStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Header' => $vendorDir . '/guzzlehttp/psr7/src/Header.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\HttpFactory' => $vendorDir . '/guzzlehttp/psr7/src/HttpFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\InflateStream' => $vendorDir . '/guzzlehttp/psr7/src/InflateStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LazyOpenStream' => $vendorDir . '/guzzlehttp/psr7/src/LazyOpenStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LimitStream' => $vendorDir . '/guzzlehttp/psr7/src/LimitStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Message' => $vendorDir . '/guzzlehttp/psr7/src/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MessageTrait' => $vendorDir . '/guzzlehttp/psr7/src/MessageTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MimeType' => $vendorDir . '/guzzlehttp/psr7/src/MimeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MultipartStream' => $vendorDir . '/guzzlehttp/psr7/src/MultipartStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\NoSeekStream' => $vendorDir . '/guzzlehttp/psr7/src/NoSeekStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\PumpStream' => $vendorDir . '/guzzlehttp/psr7/src/PumpStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Query' => $vendorDir . '/guzzlehttp/psr7/src/Query.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Request' => $vendorDir . '/guzzlehttp/psr7/src/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Response' => $vendorDir . '/guzzlehttp/psr7/src/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Rfc7230' => $vendorDir . '/guzzlehttp/psr7/src/Rfc7230.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\ServerRequest' => $vendorDir . '/guzzlehttp/psr7/src/ServerRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Stream' => $vendorDir . '/guzzlehttp/psr7/src/Stream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamDecoratorTrait' => $vendorDir . '/guzzlehttp/psr7/src/StreamDecoratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamWrapper' => $vendorDir . '/guzzlehttp/psr7/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UploadedFile' => $vendorDir . '/guzzlehttp/psr7/src/UploadedFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Uri' => $vendorDir . '/guzzlehttp/psr7/src/Uri.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriComparator' => $vendorDir . '/guzzlehttp/psr7/src/UriComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriNormalizer' => $vendorDir . '/guzzlehttp/psr7/src/UriNormalizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriResolver' => $vendorDir . '/guzzlehttp/psr7/src/UriResolver.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Utils' => $vendorDir . '/guzzlehttp/psr7/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RedirectMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/RedirectMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RequestOptions' => $vendorDir . '/guzzlehttp/guzzle/src/RequestOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RetryMiddleware' => $vendorDir . '/guzzlehttp/guzzle/src/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\TransferStats' => $vendorDir . '/guzzlehttp/guzzle/src/TransferStats.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Utils' => $vendorDir . '/guzzlehttp/guzzle/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Attribute\\AsMonologProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Attribute/AsMonologProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\DateTimeImmutable' => $vendorDir . '/monolog/monolog/src/Monolog/DateTimeImmutable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ErrorHandler' => $vendorDir . '/monolog/monolog/src/Monolog/ErrorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ChromePHPFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticaFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ElasticaFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticsearchFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ElasticsearchFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FlowdockFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FlowdockFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FluentdFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FluentdFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FormatterInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GelfMessageFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GoogleCloudLoggingFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/GoogleCloudLoggingFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\HtmlFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/HtmlFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\JsonFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/JsonFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LineFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LineFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogglyFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogglyFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogmaticFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogmaticFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogstashFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/LogstashFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\MongoDBFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/MongoDBFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\NormalizerFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/NormalizerFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ScalarFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/ScalarFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\WildfireFormatter' => $vendorDir . '/monolog/monolog/src/Monolog/Formatter/WildfireFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractProcessingHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractSyslogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AbstractSyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AmqpHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/AmqpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BrowserConsoleHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/BrowserConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BufferHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/BufferHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ChromePHPHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ChromePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CouchDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/CouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CubeHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/CubeHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Curl\\Util' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Curl/Util.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DeduplicationHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DeduplicationHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DoctrineCouchDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DoctrineCouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DynamoDbHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/DynamoDbHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticaHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ElasticaHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticsearchHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ElasticsearchHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ErrorLogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FallbackGroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FallbackGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FilterHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FilterHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossedHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossedHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ActivationStrategyInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ChannelLevelActivationStrategy' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ChannelLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ErrorLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FirePHPHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FirePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FleepHookHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FleepHookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FlowdockHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FlowdockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GelfHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/GelfHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/GroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Handler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Handler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/HandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerWrapper' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/HandlerWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\IFTTTHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/IFTTTHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\InsightOpsHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/InsightOpsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogEntriesHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogEntriesHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogglyHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogglyHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogmaticHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/LogmaticHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MailHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MailHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MandrillHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MandrillHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MissingExtensionException' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MongoDBHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/MongoDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NativeMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NativeMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NewRelicHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NewRelicHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NoopHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NoopHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NullHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/NullHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\OverflowHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/OverflowHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PHPConsoleHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PHPConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PsrHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PsrHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PushoverHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/PushoverHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RedisHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisPubSubHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RedisPubSubHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RollbarHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RollbarHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RotatingFileHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SamplingHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SamplingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SendGridHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SendGridHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SlackHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackWebhookHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SlackWebhookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Slack\\SlackRecord' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/Slack/SlackRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SocketHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SocketHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SqsHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SqsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\StreamHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SwiftMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SwiftMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SymfonyMailerHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SymfonyMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdpHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogUdpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdp\\UdpSocket' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/SyslogUdp/UdpSocket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TelegramBotHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/TelegramBotHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TestHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/TestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WebRequestRecognizerTrait' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/WebRequestRecognizerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WhatFailureGroupHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/WhatFailureGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ZendMonitorHandler' => $vendorDir . '/monolog/monolog/src/Monolog/Handler/ZendMonitorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\LogRecord' => $vendorDir . '/monolog/monolog/src/Monolog/LogRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Logger' => $vendorDir . '/monolog/monolog/src/Monolog/Logger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\GitProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/GitProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\HostnameProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/HostnameProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\IntrospectionProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/IntrospectionProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryPeakUsageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryPeakUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryUsageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MemoryUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MercurialProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/MercurialProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessIdProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/ProcessIdProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessorInterface' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\PsrLogMessageProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/PsrLogMessageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\TagProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/TagProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\UidProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/UidProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\WebProcessor' => $vendorDir . '/monolog/monolog/src/Monolog/Processor/WebProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Registry' => $vendorDir . '/monolog/monolog/src/Monolog/Registry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ResettableInterface' => $vendorDir . '/monolog/monolog/src/Monolog/ResettableInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\SignalHandler' => $vendorDir . '/monolog/monolog/src/Monolog/SignalHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Test\\TestCase' => $vendorDir . '/monolog/monolog/src/Monolog/Test/TestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Utils' => $vendorDir . '/monolog/monolog/src/Monolog/Utils.php', 'PhpToken' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheException' => $vendorDir . '/psr/cache/src/CacheException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemInterface' => $vendorDir . '/psr/cache/src/CacheItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemPoolInterface' => $vendorDir . '/psr/cache/src/CacheItemPoolInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\InvalidArgumentException' => $vendorDir . '/psr/cache/src/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientExceptionInterface' => $vendorDir . '/psr/http-client/src/ClientExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientInterface' => $vendorDir . '/psr/http-client/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\NetworkExceptionInterface' => $vendorDir . '/psr/http-client/src/NetworkExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\RequestExceptionInterface' => $vendorDir . '/psr/http-client/src/RequestExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\MessageInterface' => $vendorDir . '/psr/http-message/src/MessageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestFactoryInterface' => $vendorDir . '/psr/http-factory/src/RequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestInterface' => $vendorDir . '/psr/http-message/src/RequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseFactoryInterface' => $vendorDir . '/psr/http-factory/src/ResponseFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseInterface' => $vendorDir . '/psr/http-message/src/ResponseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestFactoryInterface' => $vendorDir . '/psr/http-factory/src/ServerRequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestInterface' => $vendorDir . '/psr/http-message/src/ServerRequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamFactoryInterface' => $vendorDir . '/psr/http-factory/src/StreamFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamInterface' => $vendorDir . '/psr/http-message/src/StreamInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileFactoryInterface' => $vendorDir . '/psr/http-factory/src/UploadedFileFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileInterface' => $vendorDir . '/psr/http-message/src/UploadedFileInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriFactoryInterface' => $vendorDir . '/psr/http-factory/src/UriFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriInterface' => $vendorDir . '/psr/http-message/src/UriInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\AbstractLogger' => $vendorDir . '/psr/log/Psr/Log/AbstractLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\InvalidArgumentException' => $vendorDir . '/psr/log/Psr/Log/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LogLevel' => $vendorDir . '/psr/log/Psr/Log/LogLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareInterface' => $vendorDir . '/psr/log/Psr/Log/LoggerAwareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareTrait' => $vendorDir . '/psr/log/Psr/Log/LoggerAwareTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerInterface' => $vendorDir . '/psr/log/Psr/Log/LoggerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerTrait' => $vendorDir . '/psr/log/Psr/Log/LoggerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\NullLogger' => $vendorDir . '/psr/log/Psr/Log/NullLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\DummyTest' => $vendorDir . '/psr/log/Psr/Log/Test/DummyTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\LoggerInterfaceTest' => $vendorDir . '/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\TestLogger' => $vendorDir . '/psr/log/Psr/Log/Test/TestLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractArray' => $vendorDir . '/ramsey/collection/src/AbstractArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractCollection' => $vendorDir . '/ramsey/collection/src/AbstractCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractSet' => $vendorDir . '/ramsey/collection/src/AbstractSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\ArrayInterface' => $vendorDir . '/ramsey/collection/src/ArrayInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Collection' => $vendorDir . '/ramsey/collection/src/Collection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\CollectionInterface' => $vendorDir . '/ramsey/collection/src/CollectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueue' => $vendorDir . '/ramsey/collection/src/DoubleEndedQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueueInterface' => $vendorDir . '/ramsey/collection/src/DoubleEndedQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\CollectionMismatchException' => $vendorDir . '/ramsey/collection/src/Exception/CollectionMismatchException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidArgumentException' => $vendorDir . '/ramsey/collection/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidSortOrderException' => $vendorDir . '/ramsey/collection/src/Exception/InvalidSortOrderException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\NoSuchElementException' => $vendorDir . '/ramsey/collection/src/Exception/NoSuchElementException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\OutOfBoundsException' => $vendorDir . '/ramsey/collection/src/Exception/OutOfBoundsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\UnsupportedOperationException' => $vendorDir . '/ramsey/collection/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\ValueExtractionException' => $vendorDir . '/ramsey/collection/src/Exception/ValueExtractionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\GenericArray' => $vendorDir . '/ramsey/collection/src/GenericArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractMap' => $vendorDir . '/ramsey/collection/src/Map/AbstractMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractTypedMap' => $vendorDir . '/ramsey/collection/src/Map/AbstractTypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AssociativeArrayMap' => $vendorDir . '/ramsey/collection/src/Map/AssociativeArrayMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\MapInterface' => $vendorDir . '/ramsey/collection/src/Map/MapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\NamedParameterMap' => $vendorDir . '/ramsey/collection/src/Map/NamedParameterMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMap' => $vendorDir . '/ramsey/collection/src/Map/TypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMapInterface' => $vendorDir . '/ramsey/collection/src/Map/TypedMapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Queue' => $vendorDir . '/ramsey/collection/src/Queue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\QueueInterface' => $vendorDir . '/ramsey/collection/src/QueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Set' => $vendorDir . '/ramsey/collection/src/Set.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\TypeTrait' => $vendorDir . '/ramsey/collection/src/Tool/TypeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueExtractorTrait' => $vendorDir . '/ramsey/collection/src/Tool/ValueExtractorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueToStringTrait' => $vendorDir . '/ramsey/collection/src/Tool/ValueToStringTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\BinaryUtils' => $vendorDir . '/ramsey/uuid/src/BinaryUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\BuilderCollection' => $vendorDir . '/ramsey/uuid/src/Builder/BuilderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DefaultUuidBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/DefaultUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DegradedUuidBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/DegradedUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\FallbackBuilder' => $vendorDir . '/ramsey/uuid/src/Builder/FallbackBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\UuidBuilderInterface' => $vendorDir . '/ramsey/uuid/src/Builder/UuidBuilderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\CodecInterface' => $vendorDir . '/ramsey/uuid/src/Codec/CodecInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\GuidStringCodec' => $vendorDir . '/ramsey/uuid/src/Codec/GuidStringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\OrderedTimeCodec' => $vendorDir . '/ramsey/uuid/src/Codec/OrderedTimeCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\StringCodec' => $vendorDir . '/ramsey/uuid/src/Codec/StringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampFirstCombCodec' => $vendorDir . '/ramsey/uuid/src/Codec/TimestampFirstCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampLastCombCodec' => $vendorDir . '/ramsey/uuid/src/Codec/TimestampLastCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\NumberConverterInterface' => $vendorDir . '/ramsey/uuid/src/Converter/NumberConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\BigNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/BigNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\DegradedNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/DegradedNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\GenericNumberConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\TimeConverterInterface' => $vendorDir . '/ramsey/uuid/src/Converter/TimeConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\BigNumberTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/BigNumberTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\DegradedTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/DegradedTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\GenericTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/GenericTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\PhpTimeConverter' => $vendorDir . '/ramsey/uuid/src/Converter/Time/PhpTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DegradedUuid' => $vendorDir . '/ramsey/uuid/src/DegradedUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidInterface' => $vendorDir . '/ramsey/uuid/src/DeprecatedUuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidMethodsTrait' => $vendorDir . '/ramsey/uuid/src/DeprecatedUuidMethodsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\BuilderNotFoundException' => $vendorDir . '/ramsey/uuid/src/Exception/BuilderNotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DateTimeException' => $vendorDir . '/ramsey/uuid/src/Exception/DateTimeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DceSecurityException' => $vendorDir . '/ramsey/uuid/src/Exception/DceSecurityException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidArgumentException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidBytesException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidBytesException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidUuidStringException' => $vendorDir . '/ramsey/uuid/src/Exception/InvalidUuidStringException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NameException' => $vendorDir . '/ramsey/uuid/src/Exception/NameException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NodeException' => $vendorDir . '/ramsey/uuid/src/Exception/NodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\RandomSourceException' => $vendorDir . '/ramsey/uuid/src/Exception/RandomSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\TimeSourceException' => $vendorDir . '/ramsey/uuid/src/Exception/TimeSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnableToBuildUuidException' => $vendorDir . '/ramsey/uuid/src/Exception/UnableToBuildUuidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnsupportedOperationException' => $vendorDir . '/ramsey/uuid/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UuidExceptionInterface' => $vendorDir . '/ramsey/uuid/src/Exception/UuidExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\FeatureSet' => $vendorDir . '/ramsey/uuid/src/FeatureSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\FieldsInterface' => $vendorDir . '/ramsey/uuid/src/Fields/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\SerializableFieldsTrait' => $vendorDir . '/ramsey/uuid/src/Fields/SerializableFieldsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\CombGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/CombGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DceSecurityGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/DceSecurityGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultNameGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DefaultNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultTimeGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/DefaultTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/NameGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/NameGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidNameGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidRandomGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidRandomGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidTimeGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/PeclUuidTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomBytesGenerator' => $vendorDir . '/ramsey/uuid/src/Generator/RandomBytesGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/RandomGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/RandomGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomLibAdapter' => $vendorDir . '/ramsey/uuid/src/Generator/RandomLibAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorFactory' => $vendorDir . '/ramsey/uuid/src/Generator/TimeGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorInterface' => $vendorDir . '/ramsey/uuid/src/Generator/TimeGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Fields' => $vendorDir . '/ramsey/uuid/src/Guid/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Guid' => $vendorDir . '/ramsey/uuid/src/Guid/Guid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\GuidBuilder' => $vendorDir . '/ramsey/uuid/src/Guid/GuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Lazy\\LazyUuidFromString' => $vendorDir . '/ramsey/uuid/src/Lazy/LazyUuidFromString.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\BrickMathCalculator' => $vendorDir . '/ramsey/uuid/src/Math/BrickMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\CalculatorInterface' => $vendorDir . '/ramsey/uuid/src/Math/CalculatorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\RoundingMode' => $vendorDir . '/ramsey/uuid/src/Math/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Fields' => $vendorDir . '/ramsey/uuid/src/Nonstandard/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Uuid' => $vendorDir . '/ramsey/uuid/src/Nonstandard/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidBuilder' => $vendorDir . '/ramsey/uuid/src/Nonstandard/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidV6' => $vendorDir . '/ramsey/uuid/src/Nonstandard/UuidV6.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\DceSecurityProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/DceSecurityProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Dce\\SystemDceSecurityProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\NodeProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/NodeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\FallbackNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\NodeProviderCollection' => $vendorDir . '/ramsey/uuid/src/Provider/Node/NodeProviderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\RandomNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/RandomNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\StaticNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/StaticNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\SystemNodeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Node/SystemNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\TimeProviderInterface' => $vendorDir . '/ramsey/uuid/src/Provider/TimeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\FixedTimeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Time/FixedTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\SystemTimeProvider' => $vendorDir . '/ramsey/uuid/src/Provider/Time/SystemTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Fields' => $vendorDir . '/ramsey/uuid/src/Rfc4122/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\FieldsInterface' => $vendorDir . '/ramsey/uuid/src/Rfc4122/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/NilTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilUuid' => $vendorDir . '/ramsey/uuid/src/Rfc4122/NilUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidBuilder' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidInterface' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV1' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV1.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV2' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV3' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV4' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV5' => $vendorDir . '/ramsey/uuid/src/Rfc4122/UuidV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Validator' => $vendorDir . '/ramsey/uuid/src/Rfc4122/Validator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VariantTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/VariantTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VersionTrait' => $vendorDir . '/ramsey/uuid/src/Rfc4122/VersionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Decimal' => $vendorDir . '/ramsey/uuid/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Hexadecimal' => $vendorDir . '/ramsey/uuid/src/Type/Hexadecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Integer' => $vendorDir . '/ramsey/uuid/src/Type/Integer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\NumberInterface' => $vendorDir . '/ramsey/uuid/src/Type/NumberInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Time' => $vendorDir . '/ramsey/uuid/src/Type/Time.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\TypeInterface' => $vendorDir . '/ramsey/uuid/src/Type/TypeInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Uuid' => $vendorDir . '/ramsey/uuid/src/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactory' => $vendorDir . '/ramsey/uuid/src/UuidFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactoryInterface' => $vendorDir . '/ramsey/uuid/src/UuidFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidInterface' => $vendorDir . '/ramsey/uuid/src/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\GenericValidator' => $vendorDir . '/ramsey/uuid/src/Validator/GenericValidator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\ValidatorInterface' => $vendorDir . '/ramsey/uuid/src/Validator/ValidatorInterface.php', 'ReturnTypeWillChange' => $vendorDir . '/symfony/polyfill-php81/Resources/stubs/ReturnTypeWillChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Abstraction' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Expression' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Expression.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Literal' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Literal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Variable' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Node/Variable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Abstraction' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Named' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/Named.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\UnNamed' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Operator/UnNamed.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Parser' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\UriTemplate' => $vendorDir . '/rize/uri-template/src/Rize/UriTemplate/UriTemplate.php', 'Stringable' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Ctype\\Ctype' => $vendorDir . '/symfony/polyfill-ctype/Ctype.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\Php80' => $vendorDir . '/symfony/polyfill-php80/Php80.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\PhpToken' => $vendorDir . '/symfony/polyfill-php80/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php81\\Php81' => $vendorDir . '/symfony/polyfill-php81/Php81.php', 'UnhandledMatchError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'ValueError' => $vendorDir . '/symfony/polyfill-php80/Resources/stubs/ValueError.php'); diff --git a/vendor/Gcp/composer/autoload_psr4.php b/vendor/Gcp/composer/autoload_psr4.php index 16a4a62e..c6f3ac67 100644 --- a/vendor/Gcp/composer/autoload_psr4.php +++ b/vendor/Gcp/composer/autoload_psr4.php @@ -5,4 +5,4 @@ // autoload_psr4.php @generated by Composer $vendorDir = \dirname(__DIR__); $baseDir = \dirname($vendorDir); -return array('Symfony\\Polyfill\\Php81\\' => array($vendorDir . '/symfony/polyfill-php81'), 'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'), 'Symfony\\Polyfill\\Ctype\\' => array($vendorDir . '/symfony/polyfill-ctype'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => array($vendorDir . '/rize/uri-template/src/Rize'), 'Ramsey\\Uuid\\' => array($vendorDir . '/ramsey/uuid/src'), 'Ramsey\\Collection\\' => array($vendorDir . '/ramsey/collection/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => array($vendorDir . '/google/cloud-storage/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => array($vendorDir . '/google/cloud-core/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\' => array($vendorDir . '/google/crc32/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => array($vendorDir . '/google/auth/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => array($vendorDir . '/firebase/php-jwt/src'), 'Brick\\Math\\' => array($vendorDir . '/brick/math/src')); +return array('Symfony\\Polyfill\\Php81\\' => array($vendorDir . '/symfony/polyfill-php81'), 'Symfony\\Polyfill\\Php80\\' => array($vendorDir . '/symfony/polyfill-php80'), 'Symfony\\Polyfill\\Ctype\\' => array($vendorDir . '/symfony/polyfill-ctype'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => array($vendorDir . '/rize/uri-template/src/Rize'), 'Ramsey\\Uuid\\' => array($vendorDir . '/ramsey/uuid/src'), 'Ramsey\\Collection\\' => array($vendorDir . '/ramsey/collection/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'), 'Grpc\\Gcp\\' => array($vendorDir . '/google/grpc-gcp/src'), 'Grpc\\' => array($vendorDir . '/grpc/grpc/src/lib'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\' => array($vendorDir . '/google/common-protos/src/Type'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\' => array($vendorDir . '/google/common-protos/src/Rpc'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\' => array($vendorDir . '/google/protobuf/src/Google/Protobuf'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\' => array($vendorDir . '/google/longrunning/src/LongRunning'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\' => array($vendorDir . '/google/common-protos/src/Iam'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => array($vendorDir . '/google/cloud-storage/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => array($vendorDir . '/google/cloud-core/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\' => array($vendorDir . '/google/common-protos/src/Cloud'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => array($vendorDir . '/google/auth/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\' => array($vendorDir . '/google/common-protos/src/Api'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\' => array($vendorDir . '/google/longrunning/src/ApiCore/LongRunning'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\' => array($vendorDir . '/google/gax/src'), 'GPBMetadata\\Google\\Type\\' => array($vendorDir . '/google/common-protos/metadata/Type'), 'GPBMetadata\\Google\\Rpc\\' => array($vendorDir . '/google/common-protos/metadata/Rpc'), 'GPBMetadata\\Google\\Protobuf\\' => array($vendorDir . '/google/protobuf/src/GPBMetadata/Google/Protobuf'), 'GPBMetadata\\Google\\Longrunning\\' => array($vendorDir . '/google/longrunning/metadata/Longrunning'), 'GPBMetadata\\Google\\Logging\\' => array($vendorDir . '/google/common-protos/metadata/Logging'), 'GPBMetadata\\Google\\Iam\\' => array($vendorDir . '/google/common-protos/metadata/Iam'), 'GPBMetadata\\Google\\Cloud\\' => array($vendorDir . '/google/common-protos/metadata/Cloud'), 'GPBMetadata\\Google\\Api\\' => array($vendorDir . '/google/common-protos/metadata/Api'), 'GPBMetadata\\ApiCore\\' => array($vendorDir . '/google/gax/metadata/ApiCore'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => array($vendorDir . '/firebase/php-jwt/src'), 'Brick\\Math\\' => array($vendorDir . '/brick/math/src')); diff --git a/vendor/Gcp/composer/autoload_real.php b/vendor/Gcp/composer/autoload_real.php index 60f89fdf..37bd526a 100644 --- a/vendor/Gcp/composer/autoload_real.php +++ b/vendor/Gcp/composer/autoload_real.php @@ -3,7 +3,7 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp; // autoload_real.php @generated by Composer -class ComposerAutoloaderInite64427848cc1598247c6e395b9c1e5b2 +class ComposerAutoloaderInit70b5f975990d46b5c7c90dc9717b8578 { private static $loader; public static function loadClassLoader($class) @@ -21,14 +21,14 @@ public static function getLoader() return self::$loader; } require __DIR__ . '/platform_check.php'; - \spl_autoload_register(array('DeliciousBrains\\WP_Offload_Media\\Gcp\\ComposerAutoloaderInite64427848cc1598247c6e395b9c1e5b2', 'loadClassLoader'), \true, \true); + \spl_autoload_register(array('DeliciousBrains\\WP_Offload_Media\\Gcp\\ComposerAutoloaderInit70b5f975990d46b5c7c90dc9717b8578', 'loadClassLoader'), \true, \true); self::$loader = $loader = new \DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload\ClassLoader(\dirname(__DIR__)); - \spl_autoload_unregister(array('DeliciousBrains\\WP_Offload_Media\\Gcp\\ComposerAutoloaderInite64427848cc1598247c6e395b9c1e5b2', 'loadClassLoader')); + \spl_autoload_unregister(array('DeliciousBrains\\WP_Offload_Media\\Gcp\\ComposerAutoloaderInit70b5f975990d46b5c7c90dc9717b8578', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; - \call_user_func(\DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload\ComposerStaticInite64427848cc1598247c6e395b9c1e5b2::getInitializer($loader)); + \call_user_func(\DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload\ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578::getInitializer($loader)); $loader->setClassMapAuthoritative(\true); $loader->register(\true); - $filesToLoad = \DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload\ComposerStaticInite64427848cc1598247c6e395b9c1e5b2::$files; + $filesToLoad = \DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload\ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578::$files; $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = \true; diff --git a/vendor/Gcp/composer/autoload_static.php b/vendor/Gcp/composer/autoload_static.php index bc9b7d16..bb2b9d20 100644 --- a/vendor/Gcp/composer/autoload_static.php +++ b/vendor/Gcp/composer/autoload_static.php @@ -3,18 +3,18 @@ // autoload_static.php @generated by Composer namespace DeliciousBrains\WP_Offload_Media\Gcp\Composer\Autoload; -class ComposerStaticInite64427848cc1598247c6e395b9c1e5b2 +class ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578 { public static $files = array('dbi_as3cf_gcp_7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php', 'dbi_as3cf_gcp_6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', 'dbi_as3cf_gcp_37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php', 'dbi_as3cf_gcp_23c18046f52bef3eea034657bafda50f' => __DIR__ . '/..' . '/symfony/polyfill-php81/bootstrap.php', 'dbi_as3cf_gcp_320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', 'dbi_as3cf_gcp_a4a119a56e50fbb293281d9a48007e0e' => __DIR__ . '/..' . '/symfony/polyfill-php80/bootstrap.php', 'dbi_as3cf_gcp_e39a8b23c42d4e1452234d762b03835a' => __DIR__ . '/..' . '/ramsey/uuid/src/functions.php'); - public static $prefixLengthsPsr4 = array('S' => array('Symfony\\Polyfill\\Php81\\' => 23, 'Symfony\\Polyfill\\Php80\\' => 23, 'Symfony\\Polyfill\\Ctype\\' => 23), 'R' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => 5, 'Ramsey\\Uuid\\' => 12, 'Ramsey\\Collection\\' => 18), 'P' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => 8, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => 17, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => 16, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => 10), 'M' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => 8), 'G' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => 16, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => 19, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => 11, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => 21, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => 18, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\' => 13, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => 12), 'F' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => 13), 'B' => array('Brick\\Math\\' => 11)); - public static $prefixDirsPsr4 = array('Symfony\\Polyfill\\Php81\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-php81'), 'Symfony\\Polyfill\\Php80\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-php80'), 'Symfony\\Polyfill\\Ctype\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-ctype'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => array(0 => __DIR__ . '/..' . '/rize/uri-template/src/Rize'), 'Ramsey\\Uuid\\' => array(0 => __DIR__ . '/..' . '/ramsey/uuid/src'), 'Ramsey\\Collection\\' => array(0 => __DIR__ . '/..' . '/ramsey/collection/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => array(0 => __DIR__ . '/..' . '/psr/log/Psr/Log'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => array(0 => __DIR__ . '/..' . '/psr/http-message/src', 1 => __DIR__ . '/..' . '/psr/http-factory/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => array(0 => __DIR__ . '/..' . '/psr/http-client/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => array(0 => __DIR__ . '/..' . '/psr/cache/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => array(0 => __DIR__ . '/..' . '/monolog/monolog/src/Monolog'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/promises/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/guzzle/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => array(0 => __DIR__ . '/..' . '/google/cloud-storage/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => array(0 => __DIR__ . '/..' . '/google/cloud-core/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\' => array(0 => __DIR__ . '/..' . '/google/crc32/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => array(0 => __DIR__ . '/..' . '/google/auth/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => array(0 => __DIR__ . '/..' . '/firebase/php-jwt/src'), 'Brick\\Math\\' => array(0 => __DIR__ . '/..' . '/brick/math/src')); - public static $classMap = array('dbi_as3cf_gcp_Attribute' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigDecimal' => __DIR__ . '/..' . '/brick/math/src/BigDecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigInteger' => __DIR__ . '/..' . '/brick/math/src/BigInteger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigNumber' => __DIR__ . '/..' . '/brick/math/src/BigNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigRational' => __DIR__ . '/..' . '/brick/math/src/BigRational.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\DivisionByZeroException' => __DIR__ . '/..' . '/brick/math/src/Exception/DivisionByZeroException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\IntegerOverflowException' => __DIR__ . '/..' . '/brick/math/src/Exception/IntegerOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\MathException' => __DIR__ . '/..' . '/brick/math/src/Exception/MathException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NegativeNumberException' => __DIR__ . '/..' . '/brick/math/src/Exception/NegativeNumberException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NumberFormatException' => __DIR__ . '/..' . '/brick/math/src/Exception/NumberFormatException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\RoundingNecessaryException' => __DIR__ . '/..' . '/brick/math/src/Exception/RoundingNecessaryException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\BcMathCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/BcMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\GmpCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/GmpCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\NativeCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/NativeCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\RoundingMode' => __DIR__ . '/..' . '/brick/math/src/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\BeforeValidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/BeforeValidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\CachedKeySet' => __DIR__ . '/..' . '/firebase/php-jwt/src/CachedKeySet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\ExpiredException' => __DIR__ . '/..' . '/firebase/php-jwt/src/ExpiredException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWK' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWK.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWT' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWT.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\Key' => __DIR__ . '/..' . '/firebase/php-jwt/src/Key.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\SignatureInvalidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/SignatureInvalidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\AccessToken' => __DIR__ . '/..' . '/google/auth/src/AccessToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ApplicationDefaultCredentials' => __DIR__ . '/..' . '/google/auth/src/ApplicationDefaultCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CacheTrait' => __DIR__ . '/..' . '/google/auth/src/CacheTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\InvalidArgumentException' => __DIR__ . '/..' . '/google/auth/src/Cache/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\Item' => __DIR__ . '/..' . '/google/auth/src/Cache/Item.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\MemoryCacheItemPool' => __DIR__ . '/..' . '/google/auth/src/Cache/MemoryCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\SysVCacheItemPool' => __DIR__ . '/..' . '/google/auth/src/Cache/SysVCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\TypedItem' => __DIR__ . '/..' . '/google/auth/src/Cache/TypedItem.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialsLoader' => __DIR__ . '/..' . '/google/auth/src/CredentialsLoader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\AppIdentityCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/AppIdentityCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\GCECredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/GCECredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\IAMCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/IAMCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ImpersonatedServiceAccountCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\InsecureCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/InsecureCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountJwtAccessCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\UserRefreshCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/UserRefreshCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenCache' => __DIR__ . '/..' . '/google/auth/src/FetchAuthTokenCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenInterface' => __DIR__ . '/..' . '/google/auth/src/FetchAuthTokenInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GCECache' => __DIR__ . '/..' . '/google/auth/src/GCECache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetQuotaProjectInterface' => __DIR__ . '/..' . '/google/auth/src/GetQuotaProjectInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle6HttpHandler' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/Guzzle6HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle7HttpHandler' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/Guzzle7HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpClientCache' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/HttpClientCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpHandlerFactory' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/HttpHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Iam' => __DIR__ . '/..' . '/google/auth/src/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\IamSignerTrait' => __DIR__ . '/..' . '/google/auth/src/IamSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\AuthTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/AuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ProxyAuthTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/ProxyAuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ScopedAccessTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/ScopedAccessTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\SimpleMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/SimpleMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\OAuth2' => __DIR__ . '/..' . '/google/auth/src/OAuth2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ProjectIdProviderInterface' => __DIR__ . '/..' . '/google/auth/src/ProjectIdProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ServiceAccountSignerTrait' => __DIR__ . '/..' . '/google/auth/src/ServiceAccountSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\SignBlobInterface' => __DIR__ . '/..' . '/google/auth/src/SignBlobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataInterface' => __DIR__ . '/..' . '/google/auth/src/UpdateMetadataInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Builtin' => __DIR__ . '/..' . '/google/crc32/src/Builtin.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRC32' => __DIR__ . '/..' . '/google/crc32/src/CRC32.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRCInterface' => __DIR__ . '/..' . '/google/crc32/src/CRCInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\CRCTrait' => __DIR__ . '/..' . '/google/crc32/src/CRCTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Google' => __DIR__ . '/..' . '/google/crc32/src/Google.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\PHP' => __DIR__ . '/..' . '/google/crc32/src/PHP.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\PHPSlicedBy4' => __DIR__ . '/..' . '/google/crc32/src/PHPSlicedBy4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\Table' => __DIR__ . '/..' . '/google/crc32/src/Table.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\AnonymousCredentials' => __DIR__ . '/..' . '/google/cloud-core/src/AnonymousCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ArrayTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemon' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchDaemon.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemonTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchDaemonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchJob' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchRunner' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchRunner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ClosureSerializerInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ClosureSerializerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ConfigStorageInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ConfigStorageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\HandleFailureTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/HandleFailureTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InMemoryConfigStorage' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/InMemoryConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InterruptTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/InterruptTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobConfig' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\OpisClosureSerializer' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/OpisClosureSerializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ProcessItemInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ProcessItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\QueueOverflowException' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/QueueOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\Retry' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SerializableClientTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SerializableClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJob' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SimpleJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJobTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SimpleJobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvConfigStorage' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SysvConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvProcessor' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SysvProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Blob' => __DIR__ . '/..' . '/google/cloud-core/src/Blob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\CallTrait' => __DIR__ . '/..' . '/google/cloud-core/src/CallTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ClientTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\HttpHandlerReader' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/HttpHandlerReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\ReaderInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/ReaderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\StreamReader' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/StreamReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ConcurrencyControlTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ConcurrencyControlTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DebugInfoTrait' => __DIR__ . '/..' . '/google/cloud-core/src/DebugInfoTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Duration' => __DIR__ . '/..' . '/google/cloud-core/src/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\EmulatorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/EmulatorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\AbortedException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/AbortedException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\BadRequestException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/BadRequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ConflictException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ConflictException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\DeadlineExceededException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/DeadlineExceededException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\FailedPreconditionException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/FailedPreconditionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\GoogleException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/GoogleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\NotFoundException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/NotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServerException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServiceException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ServiceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ExponentialBackoff' => __DIR__ . '/..' . '/google/cloud-core/src/ExponentialBackoff.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GeoPoint' => __DIR__ . '/..' . '/google/cloud-core/src/GeoPoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcRequestWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/GrpcRequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcTrait' => __DIR__ . '/..' . '/google/cloud-core/src/GrpcTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\Iam' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamConnectionInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/IamConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\PolicyBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/PolicyBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\InsecureCredentialsWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Int64' => __DIR__ . '/..' . '/google/cloud-core/src/Int64.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/ItemIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIteratorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/ItemIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/PageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIteratorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/PageIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\JsonTrait' => __DIR__ . '/..' . '/google/cloud-core/src/JsonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\FlockLock' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/FlockLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/LockInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/LockTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SemaphoreLock' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/SemaphoreLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SymfonyLockAdapter' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/SymfonyLockAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatter' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV2' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV3' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandler' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV2' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV3' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\FormatterTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/FormatterTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LROTrait' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LROTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningConnectionInterface' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningOperation' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LongRunningOperation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\OperationResponseTrait' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/OperationResponseTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\PhpArray' => __DIR__ . '/..' . '/google/cloud-core/src/PhpArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\CloudRunMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/CloudRunMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\EmptyMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/EmptyMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEFlexMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEFlexMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEStandardMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEStandardMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Report/MetadataProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderUtils' => __DIR__ . '/..' . '/google/cloud-core/src/Report/MetadataProviderUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\SimpleMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/SimpleMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/RequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapperTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RequestWrapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RestTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Retry' => __DIR__ . '/..' . '/google/cloud-core/src/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RetryDeciderTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RetryDeciderTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ServiceBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/ServiceBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\SysvTrait' => __DIR__ . '/..' . '/google/cloud-core/src/SysvTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\ArrayHasSameValuesToken' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/ArrayHasSameValuesToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\CheckForClassTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/CheckForClassTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\DatastoreOperationRefreshTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/DatastoreOperationRefreshTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\FileListFilterIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/FileListFilterIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GcTestListener' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/GcTestListener.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GrpcTestTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/GrpcTestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\KeyPairGenerateTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/KeyPairGenerateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Lock\\MockValues' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Lock/MockValues.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\DescriptionFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/DescriptionFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerV5' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\RegexFileFilter' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/RegexFileFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Container' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Container.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Coverage' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/Coverage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ExcludeFilter' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/ExcludeFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Scanner' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/Scanner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ScannerInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/ScannerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Fixtures' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Fixtures.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\InvokeResult' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/InvokeResult.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Parser' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Snippet' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/Snippet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\SnippetTestCase' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/SnippetTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\StubTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/StubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\DeletionQueue' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/DeletionQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\KeyManager' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/KeyManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\SystemTestCase' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/SystemTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\TestHelpers' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/TestHelpers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimeTrait' => __DIR__ . '/..' . '/google/cloud-core/src/TimeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Timestamp' => __DIR__ . '/..' . '/google/cloud-core/src/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimestampTrait' => __DIR__ . '/..' . '/google/cloud-core/src/TimestampTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\AbstractUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/AbstractUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\MultipartUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/MultipartUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\ResumableUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/ResumableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\SignedUrlUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/SignedUrlUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\StreamableUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/StreamableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\UriTrait' => __DIR__ . '/..' . '/google/cloud-core/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValidateTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ValidateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValueMapperTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ValueMapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\WhitelistTrait' => __DIR__ . '/..' . '/google/cloud-core/src/WhitelistTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Acl' => __DIR__ . '/..' . '/google/cloud-storage/src/Acl.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Bucket' => __DIR__ . '/..' . '/google/cloud-storage/src/Bucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\ConnectionInterface' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/ConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\IamBucket' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/IamBucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\Rest' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/Rest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\RetryTrait' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/RetryTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\CreatedHmacKey' => __DIR__ . '/..' . '/google/cloud-storage/src/CreatedHmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\EncryptionTrait' => __DIR__ . '/..' . '/google/cloud-storage/src/EncryptionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\HmacKey' => __DIR__ . '/..' . '/google/cloud-storage/src/HmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Lifecycle' => __DIR__ . '/..' . '/google/cloud-storage/src/Lifecycle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Notification' => __DIR__ . '/..' . '/google/cloud-storage/src/Notification.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectIterator' => __DIR__ . '/..' . '/google/cloud-storage/src/ObjectIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectPageIterator' => __DIR__ . '/..' . '/google/cloud-storage/src/ObjectPageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ReadStream' => __DIR__ . '/..' . '/google/cloud-storage/src/ReadStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\SigningHelper' => __DIR__ . '/..' . '/google/cloud-storage/src/SigningHelper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageClient' => __DIR__ . '/..' . '/google/cloud-storage/src/StorageClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageObject' => __DIR__ . '/..' . '/google/cloud-storage/src/StorageObject.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StreamWrapper' => __DIR__ . '/..' . '/google/cloud-storage/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\WriteStream' => __DIR__ . '/..' . '/google/cloud-storage/src/WriteStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizer' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/BodySummarizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizerInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/BodySummarizerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Client' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientTrait' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/CookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJarInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\FileCookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SessionCookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SetCookie' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/SetCookie.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\BadResponseException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/BadResponseException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ClientException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ClientException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ConnectException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ConnectException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\GuzzleException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/GuzzleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\RequestException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/RequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ServerException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TooManyRedirectsException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TransferException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/TransferException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\HandlerStack' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/HandlerStack.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactory' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactoryInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlMultiHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\EasyHandle' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/EasyHandle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\HeaderProcessor' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\MockHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/MockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\Proxy' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/Proxy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\StreamHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatter' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/MessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatterInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/MessageFormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Middleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Middleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Pool' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Pool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\PrepareBodyMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\AggregateException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/AggregateException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\CancellationException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/CancellationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Coroutine' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Coroutine.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Create' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Create.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Each' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Each.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\EachPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/EachPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\FulfilledPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/FulfilledPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Is' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Is.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Promise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Promise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromiseInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/PromiseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromisorInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/PromisorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectedPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/RejectedPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectionException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/RejectionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueue' => __DIR__ . '/..' . '/guzzlehttp/promises/src/TaskQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueueInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/TaskQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Utils' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\AppendStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/AppendStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\BufferStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/BufferStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\CachingStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/CachingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\DroppingStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/DroppingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Exception\\MalformedUriException' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Exception/MalformedUriException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\FnStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/FnStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Header' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Header.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\HttpFactory' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/HttpFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\InflateStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/InflateStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LazyOpenStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/LazyOpenStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LimitStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/LimitStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Message' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MessageTrait' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MessageTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MimeType' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MimeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MultipartStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MultipartStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\NoSeekStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/NoSeekStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\PumpStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/PumpStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Query' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Query.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Request' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Response' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Rfc7230' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Rfc7230.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\ServerRequest' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/ServerRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Stream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Stream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamDecoratorTrait' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/StreamDecoratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamWrapper' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UploadedFile' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UploadedFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Uri' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Uri.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriComparator' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriNormalizer' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriNormalizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriResolver' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriResolver.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Utils' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RedirectMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RedirectMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RequestOptions' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RequestOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RetryMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\TransferStats' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/TransferStats.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Utils' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Attribute\\AsMonologProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Attribute/AsMonologProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\DateTimeImmutable' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/DateTimeImmutable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ErrorHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/ErrorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ChromePHPFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticaFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ElasticaFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticsearchFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ElasticsearchFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FlowdockFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FlowdockFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FluentdFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FluentdFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FormatterInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GelfMessageFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GoogleCloudLoggingFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/GoogleCloudLoggingFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\HtmlFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/HtmlFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\JsonFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/JsonFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LineFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LineFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogglyFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogglyFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogmaticFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogmaticFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogstashFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogstashFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\MongoDBFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/MongoDBFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\NormalizerFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/NormalizerFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ScalarFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ScalarFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\WildfireFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/WildfireFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractProcessingHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractSyslogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractSyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AmqpHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AmqpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BrowserConsoleHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/BrowserConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BufferHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/BufferHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ChromePHPHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ChromePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CouchDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/CouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CubeHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/CubeHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Curl\\Util' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Curl/Util.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DeduplicationHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DeduplicationHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DoctrineCouchDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DoctrineCouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DynamoDbHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DynamoDbHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticaHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ElasticaHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticsearchHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ElasticsearchHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ErrorLogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FallbackGroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FallbackGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FilterHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FilterHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossedHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossedHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ActivationStrategyInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ChannelLevelActivationStrategy' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ChannelLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ErrorLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FirePHPHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FirePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FleepHookHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FleepHookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FlowdockHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FlowdockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GelfHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/GelfHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/GroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Handler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Handler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/HandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerWrapper' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/HandlerWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\IFTTTHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/IFTTTHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\InsightOpsHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/InsightOpsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogEntriesHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogEntriesHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogglyHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogglyHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogmaticHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogmaticHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MailHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MailHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MandrillHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MandrillHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MissingExtensionException' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MongoDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MongoDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NativeMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NativeMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NewRelicHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NewRelicHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NoopHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NoopHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NullHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NullHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\OverflowHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/OverflowHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PHPConsoleHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PHPConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PsrHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PsrHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PushoverHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PushoverHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RedisHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisPubSubHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RedisPubSubHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RollbarHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RollbarHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RotatingFileHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SamplingHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SamplingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SendGridHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SendGridHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SlackHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackWebhookHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SlackWebhookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Slack\\SlackRecord' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Slack/SlackRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SocketHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SocketHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SqsHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SqsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\StreamHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SwiftMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SwiftMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SymfonyMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SymfonyMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdpHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogUdpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdp\\UdpSocket' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogUdp/UdpSocket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TelegramBotHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/TelegramBotHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TestHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/TestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WebRequestRecognizerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/WebRequestRecognizerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WhatFailureGroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/WhatFailureGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ZendMonitorHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ZendMonitorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\LogRecord' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/LogRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Logger' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Logger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\GitProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/GitProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\HostnameProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/HostnameProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\IntrospectionProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/IntrospectionProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryPeakUsageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryPeakUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryUsageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MercurialProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MercurialProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessIdProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/ProcessIdProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessorInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\PsrLogMessageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/PsrLogMessageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\TagProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/TagProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\UidProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/UidProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\WebProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/WebProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Registry' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Registry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ResettableInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/ResettableInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\SignalHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/SignalHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Test\\TestCase' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Test/TestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Utils' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Utils.php', 'dbi_as3cf_gcp_PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheException' => __DIR__ . '/..' . '/psr/cache/src/CacheException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemInterface' => __DIR__ . '/..' . '/psr/cache/src/CacheItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemPoolInterface' => __DIR__ . '/..' . '/psr/cache/src/CacheItemPoolInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\InvalidArgumentException' => __DIR__ . '/..' . '/psr/cache/src/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\NetworkExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/NetworkExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\RequestExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/RequestExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\MessageInterface' => __DIR__ . '/..' . '/psr/http-message/src/MessageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/RequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestInterface' => __DIR__ . '/..' . '/psr/http-message/src/RequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/ResponseFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseInterface' => __DIR__ . '/..' . '/psr/http-message/src/ResponseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/ServerRequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestInterface' => __DIR__ . '/..' . '/psr/http-message/src/ServerRequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/StreamFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamInterface' => __DIR__ . '/..' . '/psr/http-message/src/StreamInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/UploadedFileFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileInterface' => __DIR__ . '/..' . '/psr/http-message/src/UploadedFileInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/UriFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriInterface' => __DIR__ . '/..' . '/psr/http-message/src/UriInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\AbstractLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/AbstractLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\InvalidArgumentException' => __DIR__ . '/..' . '/psr/log/Psr/Log/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LogLevel' => __DIR__ . '/..' . '/psr/log/Psr/Log/LogLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareInterface' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerAwareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareTrait' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerAwareTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerInterface' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerTrait' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\NullLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/NullLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\DummyTest' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/DummyTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\LoggerInterfaceTest' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\TestLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/TestLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractArray' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractCollection' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractSet' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\ArrayInterface' => __DIR__ . '/..' . '/ramsey/collection/src/ArrayInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Collection' => __DIR__ . '/..' . '/ramsey/collection/src/Collection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\CollectionInterface' => __DIR__ . '/..' . '/ramsey/collection/src/CollectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueue' => __DIR__ . '/..' . '/ramsey/collection/src/DoubleEndedQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueueInterface' => __DIR__ . '/..' . '/ramsey/collection/src/DoubleEndedQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\CollectionMismatchException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/CollectionMismatchException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidSortOrderException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/InvalidSortOrderException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\NoSuchElementException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/NoSuchElementException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\OutOfBoundsException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/OutOfBoundsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\UnsupportedOperationException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\ValueExtractionException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/ValueExtractionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\GenericArray' => __DIR__ . '/..' . '/ramsey/collection/src/GenericArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AbstractMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractTypedMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AbstractTypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AssociativeArrayMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AssociativeArrayMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\MapInterface' => __DIR__ . '/..' . '/ramsey/collection/src/Map/MapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\NamedParameterMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/NamedParameterMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/TypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMapInterface' => __DIR__ . '/..' . '/ramsey/collection/src/Map/TypedMapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Queue' => __DIR__ . '/..' . '/ramsey/collection/src/Queue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\QueueInterface' => __DIR__ . '/..' . '/ramsey/collection/src/QueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Set' => __DIR__ . '/..' . '/ramsey/collection/src/Set.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\TypeTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/TypeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueExtractorTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/ValueExtractorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueToStringTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/ValueToStringTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\BinaryUtils' => __DIR__ . '/..' . '/ramsey/uuid/src/BinaryUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\BuilderCollection' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/BuilderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DefaultUuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/DefaultUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DegradedUuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/DegradedUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\FallbackBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/FallbackBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\UuidBuilderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/UuidBuilderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\CodecInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/CodecInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\GuidStringCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/GuidStringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\OrderedTimeCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/OrderedTimeCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\StringCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/StringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampFirstCombCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/TimestampFirstCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampLastCombCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/TimestampLastCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\NumberConverterInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/NumberConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\BigNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/BigNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\DegradedNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/DegradedNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\GenericNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\TimeConverterInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/TimeConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\BigNumberTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/BigNumberTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\DegradedTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/DegradedTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\GenericTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/GenericTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\PhpTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/PhpTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DegradedUuid' => __DIR__ . '/..' . '/ramsey/uuid/src/DegradedUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/DeprecatedUuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidMethodsTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/DeprecatedUuidMethodsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\BuilderNotFoundException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/BuilderNotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DateTimeException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/DateTimeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DceSecurityException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/DceSecurityException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidBytesException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidBytesException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidUuidStringException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidUuidStringException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NameException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/NameException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NodeException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/NodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\RandomSourceException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/RandomSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\TimeSourceException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/TimeSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnableToBuildUuidException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UnableToBuildUuidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnsupportedOperationException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UuidExceptionInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UuidExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\FeatureSet' => __DIR__ . '/..' . '/ramsey/uuid/src/FeatureSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\FieldsInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Fields/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\SerializableFieldsTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Fields/SerializableFieldsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\CombGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/CombGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DceSecurityGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DceSecurityGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultNameGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DefaultNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultTimeGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DefaultTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/NameGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/NameGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidNameGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidRandomGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidRandomGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidTimeGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomBytesGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomBytesGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomLibAdapter' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomLibAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/TimeGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/TimeGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Guid' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/Guid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\GuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/GuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Lazy\\LazyUuidFromString' => __DIR__ . '/..' . '/ramsey/uuid/src/Lazy/LazyUuidFromString.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\BrickMathCalculator' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/BrickMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\CalculatorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/CalculatorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\RoundingMode' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Uuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidV6' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/UuidV6.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\DceSecurityProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/DceSecurityProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Dce\\SystemDceSecurityProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\NodeProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/NodeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\FallbackNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\NodeProviderCollection' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/NodeProviderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\RandomNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/RandomNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\StaticNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/StaticNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\SystemNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/SystemNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\TimeProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/TimeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\FixedTimeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Time/FixedTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\SystemTimeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Time/SystemTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\FieldsInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/NilTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilUuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/NilUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV1' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV1.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV2' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV3' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV4' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV5' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Validator' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/Validator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VariantTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/VariantTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VersionTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/VersionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Decimal' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Hexadecimal' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Hexadecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Integer' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Integer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\NumberInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/NumberInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Time' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Time.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\TypeInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/TypeInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Uuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactoryInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\GenericValidator' => __DIR__ . '/..' . '/ramsey/uuid/src/Validator/GenericValidator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\ValidatorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Validator/ValidatorInterface.php', 'dbi_as3cf_gcp_ReturnTypeWillChange' => __DIR__ . '/..' . '/symfony/polyfill-php81/Resources/stubs/ReturnTypeWillChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Abstraction' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Expression' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Expression.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Literal' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Literal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Variable' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Variable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Abstraction' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Named' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/Named.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\UnNamed' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/UnNamed.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Parser' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\UriTemplate' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/UriTemplate.php', 'dbi_as3cf_gcp_Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Ctype\\Ctype' => __DIR__ . '/..' . '/symfony/polyfill-ctype/Ctype.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\Php80' => __DIR__ . '/..' . '/symfony/polyfill-php80/Php80.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php81\\Php81' => __DIR__ . '/..' . '/symfony/polyfill-php81/Php81.php', 'dbi_as3cf_gcp_UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'dbi_as3cf_gcp_ValueError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/ValueError.php'); + public static $prefixLengthsPsr4 = array('S' => array('Symfony\\Polyfill\\Php81\\' => 23, 'Symfony\\Polyfill\\Php80\\' => 23, 'Symfony\\Polyfill\\Ctype\\' => 23), 'R' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => 5, 'Ramsey\\Uuid\\' => 12, 'Ramsey\\Collection\\' => 18), 'P' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => 8, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => 17, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => 16, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => 10), 'M' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => 8), 'G' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => 16, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => 19, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => 11, 'Grpc\\Gcp\\' => 9, 'Grpc\\' => 5, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\' => 12, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\' => 11, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\' => 16, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\' => 19, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\' => 11, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => 21, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => 18, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\' => 13, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => 12, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\' => 11, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\' => 27, 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\' => 15, 'GPBMetadata\\Google\\Type\\' => 24, 'GPBMetadata\\Google\\Rpc\\' => 23, 'GPBMetadata\\Google\\Protobuf\\' => 28, 'GPBMetadata\\Google\\Longrunning\\' => 31, 'GPBMetadata\\Google\\Logging\\' => 27, 'GPBMetadata\\Google\\Iam\\' => 23, 'GPBMetadata\\Google\\Cloud\\' => 25, 'GPBMetadata\\Google\\Api\\' => 23, 'GPBMetadata\\ApiCore\\' => 20), 'F' => array('DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => 13), 'B' => array('Brick\\Math\\' => 11)); + public static $prefixDirsPsr4 = array('Symfony\\Polyfill\\Php81\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-php81'), 'Symfony\\Polyfill\\Php80\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-php80'), 'Symfony\\Polyfill\\Ctype\\' => array(0 => __DIR__ . '/..' . '/symfony/polyfill-ctype'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\' => array(0 => __DIR__ . '/..' . '/rize/uri-template/src/Rize'), 'Ramsey\\Uuid\\' => array(0 => __DIR__ . '/..' . '/ramsey/uuid/src'), 'Ramsey\\Collection\\' => array(0 => __DIR__ . '/..' . '/ramsey/collection/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\' => array(0 => __DIR__ . '/..' . '/psr/log/Psr/Log'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\' => array(0 => __DIR__ . '/..' . '/psr/http-message/src', 1 => __DIR__ . '/..' . '/psr/http-factory/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\' => array(0 => __DIR__ . '/..' . '/psr/http-client/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\' => array(0 => __DIR__ . '/..' . '/psr/cache/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\' => array(0 => __DIR__ . '/..' . '/monolog/monolog/src/Monolog'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/psr7/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/promises/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\' => array(0 => __DIR__ . '/..' . '/guzzlehttp/guzzle/src'), 'Grpc\\Gcp\\' => array(0 => __DIR__ . '/..' . '/google/grpc-gcp/src'), 'Grpc\\' => array(0 => __DIR__ . '/..' . '/grpc/grpc/src/lib'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/src/Type'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/src/Rpc'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\' => array(0 => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\' => array(0 => __DIR__ . '/..' . '/google/longrunning/src/LongRunning'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/src/Iam'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\' => array(0 => __DIR__ . '/..' . '/google/cloud-storage/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\' => array(0 => __DIR__ . '/..' . '/google/cloud-core/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/src/Cloud'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\' => array(0 => __DIR__ . '/..' . '/google/auth/src'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/src/Api'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\' => array(0 => __DIR__ . '/..' . '/google/longrunning/src/ApiCore/LongRunning'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\' => array(0 => __DIR__ . '/..' . '/google/gax/src'), 'GPBMetadata\\Google\\Type\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Type'), 'GPBMetadata\\Google\\Rpc\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc'), 'GPBMetadata\\Google\\Protobuf\\' => array(0 => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf'), 'GPBMetadata\\Google\\Longrunning\\' => array(0 => __DIR__ . '/..' . '/google/longrunning/metadata/Longrunning'), 'GPBMetadata\\Google\\Logging\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Logging'), 'GPBMetadata\\Google\\Iam\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Iam'), 'GPBMetadata\\Google\\Cloud\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Cloud'), 'GPBMetadata\\Google\\Api\\' => array(0 => __DIR__ . '/..' . '/google/common-protos/metadata/Api'), 'GPBMetadata\\ApiCore\\' => array(0 => __DIR__ . '/..' . '/google/gax/metadata/ApiCore'), 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\' => array(0 => __DIR__ . '/..' . '/firebase/php-jwt/src'), 'Brick\\Math\\' => array(0 => __DIR__ . '/..' . '/brick/math/src')); + public static $classMap = array('dbi_as3cf_gcp_Attribute' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Attribute.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigDecimal' => __DIR__ . '/..' . '/brick/math/src/BigDecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigInteger' => __DIR__ . '/..' . '/brick/math/src/BigInteger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigNumber' => __DIR__ . '/..' . '/brick/math/src/BigNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\BigRational' => __DIR__ . '/..' . '/brick/math/src/BigRational.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\DivisionByZeroException' => __DIR__ . '/..' . '/brick/math/src/Exception/DivisionByZeroException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\IntegerOverflowException' => __DIR__ . '/..' . '/brick/math/src/Exception/IntegerOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\MathException' => __DIR__ . '/..' . '/brick/math/src/Exception/MathException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NegativeNumberException' => __DIR__ . '/..' . '/brick/math/src/Exception/NegativeNumberException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\NumberFormatException' => __DIR__ . '/..' . '/brick/math/src/Exception/NumberFormatException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Exception\\RoundingNecessaryException' => __DIR__ . '/..' . '/brick/math/src/Exception/RoundingNecessaryException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\BcMathCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/BcMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\GmpCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/GmpCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\Internal\\Calculator\\NativeCalculator' => __DIR__ . '/..' . '/brick/math/src/Internal/Calculator/NativeCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Brick\\Math\\RoundingMode' => __DIR__ . '/..' . '/brick/math/src/RoundingMode.php', 'dbi_as3cf_gcp_CURLStringFile' => __DIR__ . '/..' . '/symfony/polyfill-php81/Resources/stubs/CURLStringFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\BeforeValidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/BeforeValidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\CachedKeySet' => __DIR__ . '/..' . '/firebase/php-jwt/src/CachedKeySet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\ExpiredException' => __DIR__ . '/..' . '/firebase/php-jwt/src/ExpiredException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWK' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWK.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWT' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWT.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\JWTExceptionWithPayloadInterface' => __DIR__ . '/..' . '/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\Key' => __DIR__ . '/..' . '/firebase/php-jwt/src/Key.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Firebase\\JWT\\SignatureInvalidException' => __DIR__ . '/..' . '/firebase/php-jwt/src/SignatureInvalidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\ApiCore\\Testing\\Mocks' => __DIR__ . '/..' . '/google/gax/metadata/ApiCore/Testing/Mocks.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Annotations' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Annotations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Auth' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Auth.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Backend' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Backend.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Billing' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Billing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Client' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\ConfigChange' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/ConfigChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Consumer' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Consumer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Context' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Context.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Control' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Control.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Distribution' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Distribution.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Documentation' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Documentation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Endpoint' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Endpoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\ErrorReason' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/ErrorReason.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\FieldBehavior' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/FieldBehavior.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\FieldInfo' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/FieldInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Http' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Http.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Httpbody' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Httpbody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Label' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\LaunchStage' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/LaunchStage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Log' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Log.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Logging' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Logging.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Metric' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Metric.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\MonitoredResource' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/MonitoredResource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Monitoring' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Monitoring.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Policy' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Quota' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Quota.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Resource' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Resource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Routing' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Routing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Service' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Service.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\SourceInfo' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/SourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\SystemParameter' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/SystemParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Usage' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Usage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\Visibility' => __DIR__ . '/..' . '/google/common-protos/metadata/Api/Visibility.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\ExtendedOperations' => __DIR__ . '/..' . '/google/common-protos/metadata/Cloud/ExtendedOperations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\Location\\Locations' => __DIR__ . '/..' . '/google/common-protos/metadata/Cloud/Location/Locations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\IamPolicy' => __DIR__ . '/..' . '/google/common-protos/metadata/Iam/V1/IamPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Logging\\AuditData' => __DIR__ . '/..' . '/google/common-protos/metadata/Iam/V1/Logging/AuditData.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Options' => __DIR__ . '/..' . '/google/common-protos/metadata/Iam/V1/Options.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\V1\\Policy' => __DIR__ . '/..' . '/google/common-protos/metadata/Iam/V1/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\Type\\HttpRequest' => __DIR__ . '/..' . '/google/common-protos/metadata/Logging/Type/HttpRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\Type\\LogSeverity' => __DIR__ . '/..' . '/google/common-protos/metadata/Logging/Type/LogSeverity.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Longrunning\\Operations' => __DIR__ . '/..' . '/google/longrunning/metadata/Longrunning/Operations.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Any' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Any.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Api' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Duration' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\FieldMask' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/FieldMask.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\GPBEmpty' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/GPBEmpty.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Internal\\Descriptor' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Internal/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\SourceContext' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/SourceContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Struct' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Struct.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Timestamp' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Type' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\Wrappers' => __DIR__ . '/..' . '/google/protobuf/src/GPBMetadata/Google/Protobuf/Wrappers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Code' => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc/Code.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Context\\AttributeContext' => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc/Context/AttributeContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Context\\AuditContext' => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc/Context/AuditContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\ErrorDetails' => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc/ErrorDetails.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\Status' => __DIR__ . '/..' . '/google/common-protos/metadata/Rpc/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\CalendarPeriod' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/CalendarPeriod.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Color' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Color.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Date' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Date.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Datetime' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Datetime.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Dayofweek' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Dayofweek.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Decimal' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Expr' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Expr.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Fraction' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Fraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Interval' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Interval.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Latlng' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Latlng.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\LocalizedText' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/LocalizedText.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Money' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Money.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Month' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Month.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\PhoneNumber' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/PhoneNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\PostalAddress' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/PostalAddress.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Quaternion' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Quaternion.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\Timeofday' => __DIR__ . '/..' . '/google/common-protos/metadata/Type/Timeofday.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\GrpcGcp' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/GPBMetadata/GrpcGcp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\AgentHeader' => __DIR__ . '/..' . '/google/gax/src/AgentHeader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ApiException' => __DIR__ . '/..' . '/google/gax/src/ApiException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ApiStatus' => __DIR__ . '/..' . '/google/gax/src/ApiStatus.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ArrayTrait' => __DIR__ . '/..' . '/google/gax/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\BidiStream' => __DIR__ . '/..' . '/google/gax/src/BidiStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Call' => __DIR__ . '/..' . '/google/gax/src/Call.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ClientOptionsTrait' => __DIR__ . '/..' . '/google/gax/src/ClientOptionsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ClientStream' => __DIR__ . '/..' . '/google/gax/src/ClientStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\CredentialsWrapper' => __DIR__ . '/..' . '/google/gax/src/CredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\FixedSizeCollection' => __DIR__ . '/..' . '/google/gax/src/FixedSizeCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GPBLabel' => __DIR__ . '/..' . '/google/gax/src/GPBLabel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GPBType' => __DIR__ . '/..' . '/google/gax/src/GPBType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GapicClientTrait' => __DIR__ . '/..' . '/google/gax/src/GapicClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\GrpcSupportTrait' => __DIR__ . '/..' . '/google/gax/src/GrpcSupportTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\InsecureCredentialsWrapper' => __DIR__ . '/..' . '/google/gax/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\Gapic\\OperationsGapicClient' => __DIR__ . '/..' . '/google/longrunning/src/ApiCore/LongRunning/Gapic/OperationsGapicClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\OperationsClient' => __DIR__ . '/..' . '/google/longrunning/src/ApiCore/LongRunning/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\CredentialsWrapperMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/CredentialsWrapperMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\FixedHeaderMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/FixedHeaderMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\MiddlewareInterface' => __DIR__ . '/..' . '/google/gax/src/Middleware/MiddlewareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\OperationsMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/OperationsMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\OptionsFilterMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/OptionsFilterMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\PagedMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/PagedMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\ResponseMetadataMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/ResponseMetadataMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Middleware\\RetryMiddleware' => __DIR__ . '/..' . '/google/gax/src/Middleware/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\OperationResponse' => __DIR__ . '/..' . '/google/gax/src/OperationResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\CallOptions' => __DIR__ . '/..' . '/google/gax/src/Options/CallOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\ClientOptions' => __DIR__ . '/..' . '/google/gax/src/Options/ClientOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\OptionsTrait' => __DIR__ . '/..' . '/google/gax/src/Options/OptionsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions' => __DIR__ . '/..' . '/google/gax/src/Options/TransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\GrpcFallbackTransportOptions' => __DIR__ . '/..' . '/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\GrpcTransportOptions' => __DIR__ . '/..' . '/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Options\\TransportOptions\\RestTransportOptions' => __DIR__ . '/..' . '/google/gax/src/Options/TransportOptions/RestTransportOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Page' => __DIR__ . '/..' . '/google/gax/src/Page.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PageStreamingDescriptor' => __DIR__ . '/..' . '/google/gax/src/PageStreamingDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PagedListResponse' => __DIR__ . '/..' . '/google/gax/src/PagedListResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PathTemplate' => __DIR__ . '/..' . '/google/gax/src/PathTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\PollingTrait' => __DIR__ . '/..' . '/google/gax/src/PollingTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RequestBuilder' => __DIR__ . '/..' . '/google/gax/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RequestParamsHeaderDescriptor' => __DIR__ . '/..' . '/google/gax/src/RequestParamsHeaderDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceHelperTrait' => __DIR__ . '/..' . '/google/gax/src/ResourceHelperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\AbsoluteResourceTemplate' => __DIR__ . '/..' . '/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\Parser' => __DIR__ . '/..' . '/google/gax/src/ResourceTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\RelativeResourceTemplate' => __DIR__ . '/..' . '/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\ResourceTemplateInterface' => __DIR__ . '/..' . '/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ResourceTemplate\\Segment' => __DIR__ . '/..' . '/google/gax/src/ResourceTemplate/Segment.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\RetrySettings' => __DIR__ . '/..' . '/google/gax/src/RetrySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Serializer' => __DIR__ . '/..' . '/google/gax/src/Serializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServerStream' => __DIR__ . '/..' . '/google/gax/src/ServerStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServerStreamingCallInterface' => __DIR__ . '/..' . '/google/gax/src/ServerStreamingCallInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ServiceAddressTrait' => __DIR__ . '/..' . '/google/gax/src/ServiceAddressTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\GeneratedTest' => __DIR__ . '/..' . '/google/gax/src/Testing/GeneratedTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MessageAwareArrayComparator' => __DIR__ . '/..' . '/google/gax/src/Testing/MessageAwareArrayComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MessageAwareExporter' => __DIR__ . '/..' . '/google/gax/src/Testing/MessageAwareExporter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockBidiStreamingCall' => __DIR__ . '/..' . '/google/gax/src/Testing/MockBidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockClientStreamingCall' => __DIR__ . '/..' . '/google/gax/src/Testing/MockClientStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockGrpcTransport' => __DIR__ . '/..' . '/google/gax/src/Testing/MockGrpcTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockRequest' => __DIR__ . '/..' . '/google/gax/src/Testing/MockRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockRequestBody' => __DIR__ . '/..' . '/google/gax/src/Testing/MockRequestBody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockResponse' => __DIR__ . '/..' . '/google/gax/src/Testing/MockResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockServerStreamingCall' => __DIR__ . '/..' . '/google/gax/src/Testing/MockServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockStatus' => __DIR__ . '/..' . '/google/gax/src/Testing/MockStatus.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockStubTrait' => __DIR__ . '/..' . '/google/gax/src/Testing/MockStubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockTransport' => __DIR__ . '/..' . '/google/gax/src/Testing/MockTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\MockUnaryCall' => __DIR__ . '/..' . '/google/gax/src/Testing/MockUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ProtobufGPBEmptyComparator' => __DIR__ . '/..' . '/google/gax/src/Testing/ProtobufGPBEmptyComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ProtobufMessageComparator' => __DIR__ . '/..' . '/google/gax/src/Testing/ProtobufMessageComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\ReceivedRequest' => __DIR__ . '/..' . '/google/gax/src/Testing/ReceivedRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Testing\\SerializationTrait' => __DIR__ . '/..' . '/google/gax/src/Testing/SerializationTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\GrpcFallbackTransport' => __DIR__ . '/..' . '/google/gax/src/Transport/GrpcFallbackTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\GrpcTransport' => __DIR__ . '/..' . '/google/gax/src/Transport/GrpcTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingCall' => __DIR__ . '/..' . '/google/gax/src/Transport/Grpc/ForwardingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingServerStreamingCall' => __DIR__ . '/..' . '/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ForwardingUnaryCall' => __DIR__ . '/..' . '/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\ServerStreamingCallWrapper' => __DIR__ . '/..' . '/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Grpc\\UnaryInterceptorInterface' => __DIR__ . '/..' . '/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\HttpUnaryTransportTrait' => __DIR__ . '/..' . '/google/gax/src/Transport/HttpUnaryTransportTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\RestTransport' => __DIR__ . '/..' . '/google/gax/src/Transport/RestTransport.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Rest\\JsonStreamDecoder' => __DIR__ . '/..' . '/google/gax/src/Transport/Rest/JsonStreamDecoder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\Rest\\RestServerStreamingCall' => __DIR__ . '/..' . '/google/gax/src/Transport/Rest/RestServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Transport\\TransportInterface' => __DIR__ . '/..' . '/google/gax/src/Transport/TransportInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\UriTrait' => __DIR__ . '/..' . '/google/gax/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ValidationException' => __DIR__ . '/..' . '/google/gax/src/ValidationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\ValidationTrait' => __DIR__ . '/..' . '/google/gax/src/ValidationTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Version' => __DIR__ . '/..' . '/google/gax/src/Version.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Advice' => __DIR__ . '/..' . '/google/common-protos/src/Api/Advice.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthProvider' => __DIR__ . '/..' . '/google/common-protos/src/Api/AuthProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthRequirement' => __DIR__ . '/..' . '/google/common-protos/src/Api/AuthRequirement.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Authentication' => __DIR__ . '/..' . '/google/common-protos/src/Api/Authentication.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\AuthenticationRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/AuthenticationRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Backend' => __DIR__ . '/..' . '/google/common-protos/src/Api/Backend.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\BackendRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/BackendRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\BackendRule\\PathTranslation' => __DIR__ . '/..' . '/google/common-protos/src/Api/BackendRule/PathTranslation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Billing' => __DIR__ . '/..' . '/google/common-protos/src/Api/Billing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Billing\\BillingDestination' => __DIR__ . '/..' . '/google/common-protos/src/Api/Billing/BillingDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ChangeType' => __DIR__ . '/..' . '/google/common-protos/src/Api/ChangeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibraryDestination' => __DIR__ . '/..' . '/google/common-protos/src/Api/ClientLibraryDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibraryOrganization' => __DIR__ . '/..' . '/google/common-protos/src/Api/ClientLibraryOrganization.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ClientLibrarySettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/ClientLibrarySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CommonLanguageSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/CommonLanguageSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ConfigChange' => __DIR__ . '/..' . '/google/common-protos/src/Api/ConfigChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Context' => __DIR__ . '/..' . '/google/common-protos/src/Api/Context.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ContextRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/ContextRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Control' => __DIR__ . '/..' . '/google/common-protos/src/Api/Control.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CppSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/CppSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\CustomHttpPattern' => __DIR__ . '/..' . '/google/common-protos/src/Api/CustomHttpPattern.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/BucketOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Explicit' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Exponential' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\BucketOptions\\Linear' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\Exemplar' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/Exemplar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Distribution\\Range' => __DIR__ . '/..' . '/google/common-protos/src/Api/Distribution/Range.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Documentation' => __DIR__ . '/..' . '/google/common-protos/src/Api/Documentation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\DocumentationRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/DocumentationRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\DotnetSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/DotnetSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Endpoint' => __DIR__ . '/..' . '/google/common-protos/src/Api/Endpoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ErrorReason' => __DIR__ . '/..' . '/google/common-protos/src/Api/ErrorReason.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldBehavior' => __DIR__ . '/..' . '/google/common-protos/src/Api/FieldBehavior.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldInfo' => __DIR__ . '/..' . '/google/common-protos/src/Api/FieldInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldInfo\\Format' => __DIR__ . '/..' . '/google/common-protos/src/Api/FieldInfo/Format.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\FieldPolicy' => __DIR__ . '/..' . '/google/common-protos/src/Api/FieldPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\GoSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/GoSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Http' => __DIR__ . '/..' . '/google/common-protos/src/Api/Http.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\HttpBody' => __DIR__ . '/..' . '/google/common-protos/src/Api/HttpBody.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\HttpRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/HttpRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\JavaSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/JavaSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\JwtLocation' => __DIR__ . '/..' . '/google/common-protos/src/Api/JwtLocation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LabelDescriptor' => __DIR__ . '/..' . '/google/common-protos/src/Api/LabelDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LabelDescriptor\\ValueType' => __DIR__ . '/..' . '/google/common-protos/src/Api/LabelDescriptor/ValueType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LaunchStage' => __DIR__ . '/..' . '/google/common-protos/src/Api/LaunchStage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\LogDescriptor' => __DIR__ . '/..' . '/google/common-protos/src/Api/LogDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Logging' => __DIR__ . '/..' . '/google/common-protos/src/Api/Logging.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Logging\\LoggingDestination' => __DIR__ . '/..' . '/google/common-protos/src/Api/Logging/LoggingDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodPolicy' => __DIR__ . '/..' . '/google/common-protos/src/Api/MethodPolicy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/MethodSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MethodSettings\\LongRunning' => __DIR__ . '/..' . '/google/common-protos/src/Api/MethodSettings/LongRunning.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Metric' => __DIR__ . '/..' . '/google/common-protos/src/Api/Metric.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor' => __DIR__ . '/..' . '/google/common-protos/src/Api/MetricDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\MetricDescriptorMetadata' => __DIR__ . '/..' . '/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\MetricKind' => __DIR__ . '/..' . '/google/common-protos/src/Api/MetricDescriptor/MetricKind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricDescriptor\\ValueType' => __DIR__ . '/..' . '/google/common-protos/src/Api/MetricDescriptor/ValueType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MetricRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/MetricRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResource' => __DIR__ . '/..' . '/google/common-protos/src/Api/MonitoredResource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResourceDescriptor' => __DIR__ . '/..' . '/google/common-protos/src/Api/MonitoredResourceDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\MonitoredResourceMetadata' => __DIR__ . '/..' . '/google/common-protos/src/Api/MonitoredResourceMetadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Monitoring' => __DIR__ . '/..' . '/google/common-protos/src/Api/Monitoring.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Monitoring\\MonitoringDestination' => __DIR__ . '/..' . '/google/common-protos/src/Api/Monitoring/MonitoringDestination.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\NodeSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/NodeSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\OAuthRequirements' => __DIR__ . '/..' . '/google/common-protos/src/Api/OAuthRequirements.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Page' => __DIR__ . '/..' . '/google/common-protos/src/Api/Page.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\PhpSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/PhpSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ProjectProperties' => __DIR__ . '/..' . '/google/common-protos/src/Api/ProjectProperties.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Property' => __DIR__ . '/..' . '/google/common-protos/src/Api/Property.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Property\\PropertyType' => __DIR__ . '/..' . '/google/common-protos/src/Api/Property/PropertyType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Publishing' => __DIR__ . '/..' . '/google/common-protos/src/Api/Publishing.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\PythonSettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/PythonSettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Quota' => __DIR__ . '/..' . '/google/common-protos/src/Api/Quota.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\QuotaLimit' => __DIR__ . '/..' . '/google/common-protos/src/Api/QuotaLimit.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor' => __DIR__ . '/..' . '/google/common-protos/src/Api/ResourceDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor\\History' => __DIR__ . '/..' . '/google/common-protos/src/Api/ResourceDescriptor/History.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceDescriptor\\Style' => __DIR__ . '/..' . '/google/common-protos/src/Api/ResourceDescriptor/Style.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\ResourceReference' => __DIR__ . '/..' . '/google/common-protos/src/Api/ResourceReference.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RoutingParameter' => __DIR__ . '/..' . '/google/common-protos/src/Api/RoutingParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RoutingRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/RoutingRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\RubySettings' => __DIR__ . '/..' . '/google/common-protos/src/Api/RubySettings.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Service' => __DIR__ . '/..' . '/google/common-protos/src/Api/Service.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SourceInfo' => __DIR__ . '/..' . '/google/common-protos/src/Api/SourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameter' => __DIR__ . '/..' . '/google/common-protos/src/Api/SystemParameter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameterRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/SystemParameterRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\SystemParameters' => __DIR__ . '/..' . '/google/common-protos/src/Api/SystemParameters.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Usage' => __DIR__ . '/..' . '/google/common-protos/src/Api/Usage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\UsageRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/UsageRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\Visibility' => __DIR__ . '/..' . '/google/common-protos/src/Api/Visibility.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\VisibilityRule' => __DIR__ . '/..' . '/google/common-protos/src/Api/VisibilityRule.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\AccessToken' => __DIR__ . '/..' . '/google/auth/src/AccessToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ApplicationDefaultCredentials' => __DIR__ . '/..' . '/google/auth/src/ApplicationDefaultCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CacheTrait' => __DIR__ . '/..' . '/google/auth/src/CacheTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\InvalidArgumentException' => __DIR__ . '/..' . '/google/auth/src/Cache/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\Item' => __DIR__ . '/..' . '/google/auth/src/Cache/Item.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\MemoryCacheItemPool' => __DIR__ . '/..' . '/google/auth/src/Cache/MemoryCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\SysVCacheItemPool' => __DIR__ . '/..' . '/google/auth/src/Cache/SysVCacheItemPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Cache\\TypedItem' => __DIR__ . '/..' . '/google/auth/src/Cache/TypedItem.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\AwsNativeSource' => __DIR__ . '/..' . '/google/auth/src/CredentialSource/AwsNativeSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\FileSource' => __DIR__ . '/..' . '/google/auth/src/CredentialSource/FileSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialSource\\UrlSource' => __DIR__ . '/..' . '/google/auth/src/CredentialSource/UrlSource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\CredentialsLoader' => __DIR__ . '/..' . '/google/auth/src/CredentialsLoader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\AppIdentityCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/AppIdentityCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ExternalAccountCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ExternalAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\GCECredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/GCECredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\IAMCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/IAMCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ImpersonatedServiceAccountCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\InsecureCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/InsecureCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ServiceAccountCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\ServiceAccountJwtAccessCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Credentials\\UserRefreshCredentials' => __DIR__ . '/..' . '/google/auth/src/Credentials/UserRefreshCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ExternalAccountCredentialSourceInterface' => __DIR__ . '/..' . '/google/auth/src/ExternalAccountCredentialSourceInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenCache' => __DIR__ . '/..' . '/google/auth/src/FetchAuthTokenCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\FetchAuthTokenInterface' => __DIR__ . '/..' . '/google/auth/src/FetchAuthTokenInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GCECache' => __DIR__ . '/..' . '/google/auth/src/GCECache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetQuotaProjectInterface' => __DIR__ . '/..' . '/google/auth/src/GetQuotaProjectInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\GetUniverseDomainInterface' => __DIR__ . '/..' . '/google/auth/src/GetUniverseDomainInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle6HttpHandler' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/Guzzle6HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\Guzzle7HttpHandler' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/Guzzle7HttpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpClientCache' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/HttpClientCache.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\HttpHandler\\HttpHandlerFactory' => __DIR__ . '/..' . '/google/auth/src/HttpHandler/HttpHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Iam' => __DIR__ . '/..' . '/google/auth/src/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\IamSignerTrait' => __DIR__ . '/..' . '/google/auth/src/IamSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\AuthTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/AuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ProxyAuthTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/ProxyAuthTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\ScopedAccessTokenMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/ScopedAccessTokenMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\Middleware\\SimpleMiddleware' => __DIR__ . '/..' . '/google/auth/src/Middleware/SimpleMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\OAuth2' => __DIR__ . '/..' . '/google/auth/src/OAuth2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ProjectIdProviderInterface' => __DIR__ . '/..' . '/google/auth/src/ProjectIdProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ServiceAccountSignerTrait' => __DIR__ . '/..' . '/google/auth/src/ServiceAccountSignerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\SignBlobInterface' => __DIR__ . '/..' . '/google/auth/src/SignBlobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataInterface' => __DIR__ . '/..' . '/google/auth/src/UpdateMetadataInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\UpdateMetadataTrait' => __DIR__ . '/..' . '/google/auth/src/UpdateMetadataTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\AnonymousCredentials' => __DIR__ . '/..' . '/google/cloud-core/src/AnonymousCredentials.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ApiHelperTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ApiHelperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ArrayTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ArrayTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemon' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchDaemon.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchDaemonTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchDaemonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchJob' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchRunner' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchRunner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\BatchTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/BatchTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ClosureSerializerInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ClosureSerializerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ConfigStorageInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ConfigStorageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\HandleFailureTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/HandleFailureTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InMemoryConfigStorage' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/InMemoryConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\InterruptTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/InterruptTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobConfig' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\JobTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/JobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\OpisClosureSerializer' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/OpisClosureSerializer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\ProcessItemInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/ProcessItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\QueueOverflowException' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/QueueOverflowException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\Retry' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SerializableClientTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SerializableClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJob' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SimpleJob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SimpleJobTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SimpleJobTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvConfigStorage' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SysvConfigStorage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Batch\\SysvProcessor' => __DIR__ . '/..' . '/google/cloud-core/src/Batch/SysvProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Blob' => __DIR__ . '/..' . '/google/cloud-core/src/Blob.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\CallTrait' => __DIR__ . '/..' . '/google/cloud-core/src/CallTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ClientTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\HttpHandlerReader' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/HttpHandlerReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\ReaderInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/ReaderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Compute\\Metadata\\Readers\\StreamReader' => __DIR__ . '/..' . '/google/cloud-core/src/Compute/Metadata/Readers/StreamReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ConcurrencyControlTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ConcurrencyControlTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DebugInfoTrait' => __DIR__ . '/..' . '/google/cloud-core/src/DebugInfoTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\DetectProjectIdTrait' => __DIR__ . '/..' . '/google/cloud-core/src/DetectProjectIdTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Duration' => __DIR__ . '/..' . '/google/cloud-core/src/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\EmulatorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/EmulatorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\AbortedException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/AbortedException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\BadRequestException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/BadRequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ConflictException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ConflictException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\DeadlineExceededException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/DeadlineExceededException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\FailedPreconditionException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/FailedPreconditionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\GoogleException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/GoogleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\NotFoundException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/NotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServerException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Exception\\ServiceException' => __DIR__ . '/..' . '/google/cloud-core/src/Exception/ServiceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ExponentialBackoff' => __DIR__ . '/..' . '/google/cloud-core/src/ExponentialBackoff.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GeoPoint' => __DIR__ . '/..' . '/google/cloud-core/src/GeoPoint.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcRequestWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/GrpcRequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\GrpcTrait' => __DIR__ . '/..' . '/google/cloud-core/src/GrpcTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\Iam' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/Iam.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamConnectionInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/IamConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\IamManager' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/IamManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iam\\PolicyBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/Iam/PolicyBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\InsecureCredentialsWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/InsecureCredentialsWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Int64' => __DIR__ . '/..' . '/google/cloud-core/src/Int64.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/ItemIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\ItemIteratorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/ItemIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/PageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Iterator\\PageIteratorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Iterator/PageIteratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\JsonTrait' => __DIR__ . '/..' . '/google/cloud-core/src/JsonTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\FlockLock' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/FlockLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/LockInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\LockTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/LockTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SemaphoreLock' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/SemaphoreLock.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Lock\\SymfonyLockAdapter' => __DIR__ . '/..' . '/google/cloud-core/src/Lock/SymfonyLockAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatter' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV2' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexFormatterV3' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexFormatterV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandler' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV2' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\AppEngineFlexHandlerV3' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/AppEngineFlexHandlerV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Logger\\FormatterTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Logger/FormatterTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LROTrait' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LROTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningConnectionInterface' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\LongRunningOperation' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/LongRunningOperation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\LongRunning\\OperationResponseTrait' => __DIR__ . '/..' . '/google/cloud-core/src/LongRunning/OperationResponseTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\PhpArray' => __DIR__ . '/..' . '/google/cloud-core/src/PhpArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\CloudRunMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/CloudRunMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\EmptyMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/EmptyMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEFlexMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEFlexMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\GAEStandardMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/GAEStandardMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Report/MetadataProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\MetadataProviderUtils' => __DIR__ . '/..' . '/google/cloud-core/src/Report/MetadataProviderUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Report\\SimpleMetadataProvider' => __DIR__ . '/..' . '/google/cloud-core/src/Report/SimpleMetadataProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/RequestBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestHandler' => __DIR__ . '/..' . '/google/cloud-core/src/RequestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestProcessorTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RequestProcessorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapper' => __DIR__ . '/..' . '/google/cloud-core/src/RequestWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RequestWrapperTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RequestWrapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RestTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Retry' => __DIR__ . '/..' . '/google/cloud-core/src/Retry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\RetryDeciderTrait' => __DIR__ . '/..' . '/google/cloud-core/src/RetryDeciderTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ServiceBuilder' => __DIR__ . '/..' . '/google/cloud-core/src/ServiceBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\SysvTrait' => __DIR__ . '/..' . '/google/cloud-core/src/SysvTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\ArrayHasSameValuesToken' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/ArrayHasSameValuesToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\CheckForClassTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/CheckForClassTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\DatastoreOperationRefreshTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/DatastoreOperationRefreshTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\FileListFilterIterator' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/FileListFilterIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GcTestListener' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/GcTestListener.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\GrpcTestTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/GrpcTestTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\KeyPairGenerateTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/KeyPairGenerateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Lock\\MockValues' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Lock/MockValues.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\DescriptionFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/DescriptionFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerFactory' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Reflection\\ReflectionHandlerV5' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Reflection/ReflectionHandlerV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\RegexFileFilter' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/RegexFileFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Container' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Container.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Coverage' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/Coverage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ExcludeFilter' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/ExcludeFilter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\Scanner' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/Scanner.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Coverage\\ScannerInterface' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Coverage/ScannerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Fixtures' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Fixtures.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\InvokeResult' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/InvokeResult.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Parser' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\Parser\\Snippet' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/Parser/Snippet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\Snippet\\SnippetTestCase' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/Snippet/SnippetTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\StubTrait' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/StubTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\DeletionQueue' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/DeletionQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\KeyManager' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/KeyManager.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\System\\SystemTestCase' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/System/SystemTestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Testing\\TestHelpers' => __DIR__ . '/..' . '/google/cloud-core/src/Testing/TestHelpers.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimeTrait' => __DIR__ . '/..' . '/google/cloud-core/src/TimeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Timestamp' => __DIR__ . '/..' . '/google/cloud-core/src/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\TimestampTrait' => __DIR__ . '/..' . '/google/cloud-core/src/TimestampTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\AbstractUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/AbstractUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\MultipartUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/MultipartUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\ResumableUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/ResumableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\SignedUrlUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/SignedUrlUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\Upload\\StreamableUploader' => __DIR__ . '/..' . '/google/cloud-core/src/Upload/StreamableUploader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\UriTrait' => __DIR__ . '/..' . '/google/cloud-core/src/UriTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValidateTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ValidateTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\ValueMapperTrait' => __DIR__ . '/..' . '/google/cloud-core/src/ValueMapperTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Core\\WhitelistTrait' => __DIR__ . '/..' . '/google/cloud-core/src/WhitelistTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfig' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfigDelta' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditConfigDelta\\Action' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditLogConfig' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\AuditLogConfig\\LogType' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\Binding' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/Binding.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\BindingDelta' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\BindingDelta\\Action' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\GetIamPolicyRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\GetPolicyOptions' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\Policy' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/Policy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\PolicyDelta' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\SetIamPolicyRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\TestIamPermissionsRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Iam\\V1\\TestIamPermissionsResponse' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\GetLocationRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Location/GetLocationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\ListLocationsRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Location/ListLocationsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\ListLocationsResponse' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Location/ListLocationsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Location\\Location' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Location/Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Logging\\Type\\HttpRequest' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Logging\\Type\\LogSeverity' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\OperationResponseMapping' => __DIR__ . '/..' . '/google/common-protos/src/Cloud/OperationResponseMapping.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Acl' => __DIR__ . '/..' . '/google/cloud-storage/src/Acl.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Bucket' => __DIR__ . '/..' . '/google/cloud-storage/src/Bucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\ConnectionInterface' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/ConnectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\IamBucket' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/IamBucket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\Rest' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/Rest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Connection\\RetryTrait' => __DIR__ . '/..' . '/google/cloud-storage/src/Connection/RetryTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\CreatedHmacKey' => __DIR__ . '/..' . '/google/cloud-storage/src/CreatedHmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\EncryptionTrait' => __DIR__ . '/..' . '/google/cloud-storage/src/EncryptionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\HmacKey' => __DIR__ . '/..' . '/google/cloud-storage/src/HmacKey.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Lifecycle' => __DIR__ . '/..' . '/google/cloud-storage/src/Lifecycle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\Notification' => __DIR__ . '/..' . '/google/cloud-storage/src/Notification.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectIterator' => __DIR__ . '/..' . '/google/cloud-storage/src/ObjectIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ObjectPageIterator' => __DIR__ . '/..' . '/google/cloud-storage/src/ObjectPageIterator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\ReadStream' => __DIR__ . '/..' . '/google/cloud-storage/src/ReadStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\SigningHelper' => __DIR__ . '/..' . '/google/cloud-storage/src/SigningHelper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageClient' => __DIR__ . '/..' . '/google/cloud-storage/src/StorageClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StorageObject' => __DIR__ . '/..' . '/google/cloud-storage/src/StorageObject.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\StreamWrapper' => __DIR__ . '/..' . '/google/cloud-storage/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\Storage\\WriteStream' => __DIR__ . '/..' . '/google/cloud-storage/src/WriteStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\V1\\Logging\\AuditData' => __DIR__ . '/..' . '/google/common-protos/src/Iam/V1/Logging/AuditData.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\CancelOperationRequest' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/CancelOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Client\\OperationsClient' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/Client/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\DeleteOperationRequest' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/DeleteOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Gapic\\OperationsGapicClient' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/Gapic/OperationsGapicClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\GetOperationRequest' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/GetOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\ListOperationsRequest' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/ListOperationsRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\ListOperationsResponse' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/ListOperationsResponse.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\Operation' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/Operation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationInfo' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/OperationInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationsClient' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/OperationsClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\OperationsGrpcClient' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/OperationsGrpcClient.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\WaitOperationRequest' => __DIR__ . '/..' . '/google/longrunning/src/LongRunning/WaitOperationRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Any' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Any.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Api' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\BoolValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/BoolValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\BytesValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/BytesValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Descriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\DescriptorPool' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/DescriptorPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\DoubleValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/DoubleValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Duration' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Duration.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Enum' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Enum.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/EnumDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/EnumValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\EnumValueDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/EnumValueDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Field.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FieldDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/FieldDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FieldMask' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/FieldMask.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field\\Cardinality' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Field/Cardinality.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field\\Kind' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Field/Kind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field_Cardinality' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Field_Cardinality.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Field_Kind' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Field_Kind.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\FloatValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/FloatValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\GPBEmpty' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/GPBEmpty.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Int32Value' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Int32Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Int64Value' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Int64Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\AnyBase' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/AnyBase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\CodedInputStream' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/CodedInputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\CodedOutputStream' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/CodedOutputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\Descriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/Descriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorPool' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorPool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto\\ExtensionRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ExtensionRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto\\ReservedRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto/ReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto_ExtensionRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ExtensionRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\DescriptorProto_ReservedRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/DescriptorProto_ReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumBuilderContext' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumBuilderContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto\\EnumReservedRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto/EnumReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumDescriptorProto_EnumReservedRange' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumDescriptorProto_EnumReservedRange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumValueDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumValueDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\EnumValueOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/EnumValueOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ExtensionRangeOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/ExtensionRangeOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto\\Label' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto\\Type' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto_Label' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Label.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldDescriptorProto_Type' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldDescriptorProto_Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions\\CType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/CType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions\\JSType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions/JSType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions_CType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_CType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FieldOptions_JSType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FieldOptions_JSType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileDescriptorSet' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileDescriptorSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions\\OptimizeMode' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions/OptimizeMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\FileOptions_OptimizeMode' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/FileOptions_OptimizeMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBDecodeException' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBDecodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBJsonWire' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBJsonWire.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBLabel' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBLabel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBUtil' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBUtil.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBWire' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBWire.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GPBWireType' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GPBWireType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo\\Annotation' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo/Annotation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GeneratedCodeInfo_Annotation' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GeneratedCodeInfo_Annotation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\GetPublicDescriptorTrait' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/GetPublicDescriptorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\HasPublicDescriptorTrait' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/HasPublicDescriptorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapEntry' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MapEntry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapField' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MapField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MapFieldIter' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MapFieldIter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\Message' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MessageBuilderContext' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MessageBuilderContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MessageOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MessageOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MethodDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions\\IdempotencyLevel' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions/IdempotencyLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\MethodOptions_IdempotencyLevel' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/MethodOptions_IdempotencyLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/OneofDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofField' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/OneofField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\OneofOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/OneofOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RawInputStream' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/RawInputStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RepeatedField' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\RepeatedFieldIter' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ServiceDescriptorProto' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/ServiceDescriptorProto.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\ServiceOptions' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/ServiceOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo\\Location' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo/Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\SourceCodeInfo_Location' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/SourceCodeInfo_Location.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\TimestampBase' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/TimestampBase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption\\NamePart' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption/NamePart.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Internal\\UninterpretedOption_NamePart' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Internal/UninterpretedOption_NamePart.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\ListValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/ListValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Method' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Method.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Mixin' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Mixin.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\NullValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/NullValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\OneofDescriptor' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/OneofDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Option' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Option.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\SourceContext' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/SourceContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\StringValue' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/StringValue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Struct' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Struct.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Syntax' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Syntax.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Timestamp' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Timestamp.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Type' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Type.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\UInt32Value' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/UInt32Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\UInt64Value' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/UInt64Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\Value' => __DIR__ . '/..' . '/google/protobuf/src/Google/Protobuf/Value.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\BadRequest' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/BadRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\BadRequest\\FieldViolation' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/BadRequest/FieldViolation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Code' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Code.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Api' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Api.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Auth' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Peer' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Request' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Resource' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AttributeContext\\Response' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AttributeContext/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Context\\AuditContext' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Context/AuditContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\DebugInfo' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/DebugInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\ErrorInfo' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/ErrorInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Help' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Help.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Help\\Link' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Help/Link.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\LocalizedMessage' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/LocalizedMessage.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\PreconditionFailure' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/PreconditionFailure.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\PreconditionFailure\\Violation' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/PreconditionFailure/Violation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\QuotaFailure' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/QuotaFailure.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\QuotaFailure\\Violation' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/QuotaFailure/Violation.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\RequestInfo' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/RequestInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\ResourceInfo' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/ResourceInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\RetryInfo' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/RetryInfo.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\Status' => __DIR__ . '/..' . '/google/common-protos/src/Rpc/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\CalendarPeriod' => __DIR__ . '/..' . '/google/common-protos/src/Type/CalendarPeriod.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Color' => __DIR__ . '/..' . '/google/common-protos/src/Type/Color.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Date' => __DIR__ . '/..' . '/google/common-protos/src/Type/Date.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\DateTime' => __DIR__ . '/..' . '/google/common-protos/src/Type/DateTime.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\DayOfWeek' => __DIR__ . '/..' . '/google/common-protos/src/Type/DayOfWeek.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Decimal' => __DIR__ . '/..' . '/google/common-protos/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Expr' => __DIR__ . '/..' . '/google/common-protos/src/Type/Expr.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Fraction' => __DIR__ . '/..' . '/google/common-protos/src/Type/Fraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Interval' => __DIR__ . '/..' . '/google/common-protos/src/Type/Interval.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\LatLng' => __DIR__ . '/..' . '/google/common-protos/src/Type/LatLng.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\LocalizedText' => __DIR__ . '/..' . '/google/common-protos/src/Type/LocalizedText.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Money' => __DIR__ . '/..' . '/google/common-protos/src/Type/Money.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Month' => __DIR__ . '/..' . '/google/common-protos/src/Type/Month.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PhoneNumber' => __DIR__ . '/..' . '/google/common-protos/src/Type/PhoneNumber.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PhoneNumber\\ShortCode' => __DIR__ . '/..' . '/google/common-protos/src/Type/PhoneNumber/ShortCode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\PostalAddress' => __DIR__ . '/..' . '/google/common-protos/src/Type/PostalAddress.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\Quaternion' => __DIR__ . '/..' . '/google/common-protos/src/Type/Quaternion.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\TimeOfDay' => __DIR__ . '/..' . '/google/common-protos/src/Type/TimeOfDay.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\TimeZone' => __DIR__ . '/..' . '/google/common-protos/src/Type/TimeZone.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\AbstractCall' => __DIR__ . '/..' . '/grpc/grpc/src/lib/AbstractCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\BaseStub' => __DIR__ . '/..' . '/grpc/grpc/src/lib/BaseStub.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\BidiStreamingCall' => __DIR__ . '/..' . '/grpc/grpc/src/lib/BidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\CallInvoker' => __DIR__ . '/..' . '/grpc/grpc/src/lib/CallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ClientStreamingCall' => __DIR__ . '/..' . '/grpc/grpc/src/lib/ClientStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\DefaultCallInvoker' => __DIR__ . '/..' . '/grpc/grpc/src/lib/DefaultCallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\AffinityConfig' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\AffinityConfig_Command' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/Grpc/Gcp/AffinityConfig_Command.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ApiConfig' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/Grpc/Gcp/ApiConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ChannelPoolConfig' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/Grpc/Gcp/ChannelPoolConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\ChannelRef' => __DIR__ . '/..' . '/google/grpc-gcp/src/ChannelRef.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\Config' => __DIR__ . '/..' . '/google/grpc-gcp/src/Config.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\CreatedByDeserializeCheck' => __DIR__ . '/..' . '/google/grpc-gcp/src/CreatedByDeserializeCheck.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPBidiStreamingCall' => __DIR__ . '/..' . '/google/grpc-gcp/src/GCPBidiStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPCallInvoker' => __DIR__ . '/..' . '/google/grpc-gcp/src/GCPCallInvoker.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPClientStreamCall' => __DIR__ . '/..' . '/google/grpc-gcp/src/GCPClientStreamCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPServerStreamCall' => __DIR__ . '/..' . '/google/grpc-gcp/src/GCPServerStreamCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GCPUnaryCall' => __DIR__ . '/..' . '/google/grpc-gcp/src/GCPUnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GcpBaseCall' => __DIR__ . '/..' . '/google/grpc-gcp/src/GcpBaseCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\GcpExtensionChannel' => __DIR__ . '/..' . '/google/grpc-gcp/src/GcpExtensionChannel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\MethodConfig' => __DIR__ . '/..' . '/google/grpc-gcp/src/generated/Grpc/Gcp/MethodConfig.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Interceptor' => __DIR__ . '/..' . '/grpc/grpc/src/lib/Interceptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Internal\\InterceptorChannel' => __DIR__ . '/..' . '/grpc/grpc/src/lib/Internal/InterceptorChannel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\MethodDescriptor' => __DIR__ . '/..' . '/grpc/grpc/src/lib/MethodDescriptor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\RpcServer' => __DIR__ . '/..' . '/grpc/grpc/src/lib/RpcServer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerCallReader' => __DIR__ . '/..' . '/grpc/grpc/src/lib/ServerCallReader.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerCallWriter' => __DIR__ . '/..' . '/grpc/grpc/src/lib/ServerCallWriter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerContext' => __DIR__ . '/..' . '/grpc/grpc/src/lib/ServerContext.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\ServerStreamingCall' => __DIR__ . '/..' . '/grpc/grpc/src/lib/ServerStreamingCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Status' => __DIR__ . '/..' . '/grpc/grpc/src/lib/Status.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\UnaryCall' => __DIR__ . '/..' . '/grpc/grpc/src/lib/UnaryCall.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizer' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/BodySummarizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\BodySummarizerInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/BodySummarizerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Client' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Client.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\ClientTrait' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/ClientTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/CookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\CookieJarInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\FileCookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/FileCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SessionCookieJar' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Cookie\\SetCookie' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Cookie/SetCookie.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\BadResponseException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/BadResponseException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ClientException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ClientException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ConnectException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ConnectException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\GuzzleException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/GuzzleException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\RequestException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/RequestException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\ServerException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/ServerException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TooManyRedirectsException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Exception\\TransferException' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Exception/TransferException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\HandlerStack' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/HandlerStack.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactory' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlFactoryInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\CurlMultiHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\EasyHandle' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/EasyHandle.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\HeaderProcessor' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\MockHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/MockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\Proxy' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/Proxy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Handler\\StreamHandler' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatter' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/MessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\MessageFormatterInterface' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/MessageFormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Middleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Middleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Pool' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Pool.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\PrepareBodyMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\AggregateException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/AggregateException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\CancellationException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/CancellationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Coroutine' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Coroutine.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Create' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Create.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Each' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Each.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\EachPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/EachPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\FulfilledPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/FulfilledPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Is' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Is.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Promise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Promise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromiseInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/PromiseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\PromisorInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/PromisorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectedPromise' => __DIR__ . '/..' . '/guzzlehttp/promises/src/RejectedPromise.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\RejectionException' => __DIR__ . '/..' . '/guzzlehttp/promises/src/RejectionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueue' => __DIR__ . '/..' . '/guzzlehttp/promises/src/TaskQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\TaskQueueInterface' => __DIR__ . '/..' . '/guzzlehttp/promises/src/TaskQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Promise\\Utils' => __DIR__ . '/..' . '/guzzlehttp/promises/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\AppendStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/AppendStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\BufferStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/BufferStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\CachingStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/CachingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\DroppingStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/DroppingStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Exception\\MalformedUriException' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Exception/MalformedUriException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\FnStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/FnStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Header' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Header.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\HttpFactory' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/HttpFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\InflateStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/InflateStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LazyOpenStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/LazyOpenStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\LimitStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/LimitStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Message' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Message.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MessageTrait' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MessageTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MimeType' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MimeType.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\MultipartStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/MultipartStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\NoSeekStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/NoSeekStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\PumpStream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/PumpStream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Query' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Query.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Request' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Request.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Response' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Response.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Rfc7230' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Rfc7230.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\ServerRequest' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/ServerRequest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Stream' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Stream.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamDecoratorTrait' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/StreamDecoratorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\StreamWrapper' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/StreamWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UploadedFile' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UploadedFile.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Uri' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Uri.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriComparator' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriComparator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriNormalizer' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriNormalizer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\UriResolver' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/UriResolver.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Psr7\\Utils' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RedirectMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RedirectMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RequestOptions' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RequestOptions.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\RetryMiddleware' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/RetryMiddleware.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\TransferStats' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/TransferStats.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\GuzzleHttp\\Utils' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/Utils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Attribute\\AsMonologProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Attribute/AsMonologProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\DateTimeImmutable' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/DateTimeImmutable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ErrorHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/ErrorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ChromePHPFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ChromePHPFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticaFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ElasticaFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ElasticsearchFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ElasticsearchFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FlowdockFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FlowdockFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FluentdFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FluentdFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\FormatterInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/FormatterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GelfMessageFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/GelfMessageFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\GoogleCloudLoggingFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/GoogleCloudLoggingFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\HtmlFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/HtmlFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\JsonFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/JsonFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LineFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LineFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogglyFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogglyFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogmaticFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogmaticFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\LogstashFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/LogstashFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\MongoDBFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/MongoDBFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\NormalizerFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/NormalizerFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\ScalarFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/ScalarFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Formatter\\WildfireFormatter' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Formatter/WildfireFormatter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractProcessingHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AbstractSyslogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AbstractSyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\AmqpHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/AmqpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BrowserConsoleHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/BrowserConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\BufferHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/BufferHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ChromePHPHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ChromePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CouchDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/CouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\CubeHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/CubeHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Curl\\Util' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Curl/Util.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DeduplicationHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DeduplicationHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DoctrineCouchDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DoctrineCouchDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\DynamoDbHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/DynamoDbHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticaHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ElasticaHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ElasticsearchHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ElasticsearchHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ErrorLogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ErrorLogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FallbackGroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FallbackGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FilterHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FilterHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossedHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossedHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ActivationStrategyInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ActivationStrategyInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ChannelLevelActivationStrategy' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ChannelLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FingersCrossed\\ErrorLevelActivationStrategy' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FingersCrossed/ErrorLevelActivationStrategy.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FirePHPHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FirePHPHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FleepHookHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FleepHookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FlowdockHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FlowdockHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\FormattableHandlerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/FormattableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GelfHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/GelfHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\GroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/GroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Handler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Handler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/HandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\HandlerWrapper' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/HandlerWrapper.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\IFTTTHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/IFTTTHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\InsightOpsHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/InsightOpsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogEntriesHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogEntriesHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogglyHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogglyHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\LogmaticHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/LogmaticHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MailHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MailHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MandrillHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MandrillHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MissingExtensionException' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\MongoDBHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/MongoDBHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NativeMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NativeMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NewRelicHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NewRelicHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NoopHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NoopHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\NullHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/NullHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\OverflowHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/OverflowHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PHPConsoleHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PHPConsoleHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ProcessableHandlerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ProcessableHandlerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PsrHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PsrHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\PushoverHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/PushoverHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RedisHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RedisPubSubHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RedisPubSubHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RollbarHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RollbarHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\RotatingFileHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SamplingHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SamplingHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SendGridHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SendGridHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SlackHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SlackWebhookHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SlackWebhookHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\Slack\\SlackRecord' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/Slack/SlackRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SocketHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SocketHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SqsHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SqsHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\StreamHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/StreamHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SwiftMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SwiftMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SymfonyMailerHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SymfonyMailerHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdpHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogUdpHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\SyslogUdp\\UdpSocket' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/SyslogUdp/UdpSocket.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TelegramBotHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/TelegramBotHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\TestHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/TestHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WebRequestRecognizerTrait' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/WebRequestRecognizerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\WhatFailureGroupHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/WhatFailureGroupHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Handler\\ZendMonitorHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Handler/ZendMonitorHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\LogRecord' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/LogRecord.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Logger' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Logger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\GitProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/GitProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\HostnameProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/HostnameProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\IntrospectionProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/IntrospectionProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryPeakUsageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryPeakUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MemoryUsageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MemoryUsageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\MercurialProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/MercurialProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessIdProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/ProcessIdProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\ProcessorInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\PsrLogMessageProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/PsrLogMessageProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\TagProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/TagProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\UidProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/UidProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Processor\\WebProcessor' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Processor/WebProcessor.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Registry' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Registry.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\ResettableInterface' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/ResettableInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\SignalHandler' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/SignalHandler.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Test\\TestCase' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Test/TestCase.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Monolog\\Utils' => __DIR__ . '/..' . '/monolog/monolog/src/Monolog/Utils.php', 'dbi_as3cf_gcp_PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheException' => __DIR__ . '/..' . '/psr/cache/src/CacheException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemInterface' => __DIR__ . '/..' . '/psr/cache/src/CacheItemInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\CacheItemPoolInterface' => __DIR__ . '/..' . '/psr/cache/src/CacheItemPoolInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Cache\\InvalidArgumentException' => __DIR__ . '/..' . '/psr/cache/src/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\ClientInterface' => __DIR__ . '/..' . '/psr/http-client/src/ClientInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\NetworkExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/NetworkExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Client\\RequestExceptionInterface' => __DIR__ . '/..' . '/psr/http-client/src/RequestExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\MessageInterface' => __DIR__ . '/..' . '/psr/http-message/src/MessageInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/RequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\RequestInterface' => __DIR__ . '/..' . '/psr/http-message/src/RequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/ResponseFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ResponseInterface' => __DIR__ . '/..' . '/psr/http-message/src/ResponseInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/ServerRequestFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\ServerRequestInterface' => __DIR__ . '/..' . '/psr/http-message/src/ServerRequestInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/StreamFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\StreamInterface' => __DIR__ . '/..' . '/psr/http-message/src/StreamInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/UploadedFileFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UploadedFileInterface' => __DIR__ . '/..' . '/psr/http-message/src/UploadedFileInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriFactoryInterface' => __DIR__ . '/..' . '/psr/http-factory/src/UriFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Http\\Message\\UriInterface' => __DIR__ . '/..' . '/psr/http-message/src/UriInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\AbstractLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/AbstractLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\InvalidArgumentException' => __DIR__ . '/..' . '/psr/log/Psr/Log/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LogLevel' => __DIR__ . '/..' . '/psr/log/Psr/Log/LogLevel.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareInterface' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerAwareInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerAwareTrait' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerAwareTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerInterface' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\LoggerTrait' => __DIR__ . '/..' . '/psr/log/Psr/Log/LoggerTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\NullLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/NullLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\DummyTest' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/DummyTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\LoggerInterfaceTest' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Psr\\Log\\Test\\TestLogger' => __DIR__ . '/..' . '/psr/log/Psr/Log/Test/TestLogger.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractArray' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractCollection' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\AbstractSet' => __DIR__ . '/..' . '/ramsey/collection/src/AbstractSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\ArrayInterface' => __DIR__ . '/..' . '/ramsey/collection/src/ArrayInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Collection' => __DIR__ . '/..' . '/ramsey/collection/src/Collection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\CollectionInterface' => __DIR__ . '/..' . '/ramsey/collection/src/CollectionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueue' => __DIR__ . '/..' . '/ramsey/collection/src/DoubleEndedQueue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\DoubleEndedQueueInterface' => __DIR__ . '/..' . '/ramsey/collection/src/DoubleEndedQueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\CollectionMismatchException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/CollectionMismatchException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\InvalidSortOrderException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/InvalidSortOrderException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\NoSuchElementException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/NoSuchElementException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\OutOfBoundsException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/OutOfBoundsException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\UnsupportedOperationException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Exception\\ValueExtractionException' => __DIR__ . '/..' . '/ramsey/collection/src/Exception/ValueExtractionException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\GenericArray' => __DIR__ . '/..' . '/ramsey/collection/src/GenericArray.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AbstractMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AbstractTypedMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AbstractTypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\AssociativeArrayMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/AssociativeArrayMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\MapInterface' => __DIR__ . '/..' . '/ramsey/collection/src/Map/MapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\NamedParameterMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/NamedParameterMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMap' => __DIR__ . '/..' . '/ramsey/collection/src/Map/TypedMap.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Map\\TypedMapInterface' => __DIR__ . '/..' . '/ramsey/collection/src/Map/TypedMapInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Queue' => __DIR__ . '/..' . '/ramsey/collection/src/Queue.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\QueueInterface' => __DIR__ . '/..' . '/ramsey/collection/src/QueueInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Set' => __DIR__ . '/..' . '/ramsey/collection/src/Set.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\TypeTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/TypeTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueExtractorTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/ValueExtractorTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Collection\\Tool\\ValueToStringTrait' => __DIR__ . '/..' . '/ramsey/collection/src/Tool/ValueToStringTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\BinaryUtils' => __DIR__ . '/..' . '/ramsey/uuid/src/BinaryUtils.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\BuilderCollection' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/BuilderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DefaultUuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/DefaultUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\DegradedUuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/DegradedUuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\FallbackBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/FallbackBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Builder\\UuidBuilderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Builder/UuidBuilderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\CodecInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/CodecInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\GuidStringCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/GuidStringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\OrderedTimeCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/OrderedTimeCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\StringCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/StringCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampFirstCombCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/TimestampFirstCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Codec\\TimestampLastCombCodec' => __DIR__ . '/..' . '/ramsey/uuid/src/Codec/TimestampLastCombCodec.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\NumberConverterInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/NumberConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\BigNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/BigNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\DegradedNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/DegradedNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Number\\GenericNumberConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Number/GenericNumberConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\TimeConverterInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/TimeConverterInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\BigNumberTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/BigNumberTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\DegradedTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/DegradedTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\GenericTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/GenericTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Converter\\Time\\PhpTimeConverter' => __DIR__ . '/..' . '/ramsey/uuid/src/Converter/Time/PhpTimeConverter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DegradedUuid' => __DIR__ . '/..' . '/ramsey/uuid/src/DegradedUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/DeprecatedUuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\DeprecatedUuidMethodsTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/DeprecatedUuidMethodsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\BuilderNotFoundException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/BuilderNotFoundException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DateTimeException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/DateTimeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\DceSecurityException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/DceSecurityException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidArgumentException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidBytesException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidBytesException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\InvalidUuidStringException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/InvalidUuidStringException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NameException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/NameException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\NodeException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/NodeException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\RandomSourceException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/RandomSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\TimeSourceException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/TimeSourceException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnableToBuildUuidException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UnableToBuildUuidException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UnsupportedOperationException' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UnsupportedOperationException.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Exception\\UuidExceptionInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Exception/UuidExceptionInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\FeatureSet' => __DIR__ . '/..' . '/ramsey/uuid/src/FeatureSet.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\FieldsInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Fields/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Fields\\SerializableFieldsTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Fields/SerializableFieldsTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\CombGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/CombGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DceSecurityGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DceSecurityGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DceSecurityGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultNameGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DefaultNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\DefaultTimeGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/DefaultTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/NameGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\NameGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/NameGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidNameGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidNameGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidRandomGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidRandomGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\PeclUuidTimeGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/PeclUuidTimeGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomBytesGenerator' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomBytesGenerator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\RandomLibAdapter' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/RandomLibAdapter.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/TimeGeneratorFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Generator\\TimeGeneratorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Generator/TimeGeneratorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\Guid' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/Guid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Guid\\GuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Guid/GuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Lazy\\LazyUuidFromString' => __DIR__ . '/..' . '/ramsey/uuid/src/Lazy/LazyUuidFromString.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\BrickMathCalculator' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/BrickMathCalculator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\CalculatorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/CalculatorInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Math\\RoundingMode' => __DIR__ . '/..' . '/ramsey/uuid/src/Math/RoundingMode.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\Uuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Nonstandard\\UuidV6' => __DIR__ . '/..' . '/ramsey/uuid/src/Nonstandard/UuidV6.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\DceSecurityProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/DceSecurityProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Dce\\SystemDceSecurityProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Dce/SystemDceSecurityProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\NodeProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/NodeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\FallbackNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\NodeProviderCollection' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/NodeProviderCollection.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\RandomNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/RandomNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\StaticNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/StaticNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Node\\SystemNodeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Node/SystemNodeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\TimeProviderInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/TimeProviderInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\FixedTimeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Time/FixedTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Provider\\Time\\SystemTimeProvider' => __DIR__ . '/..' . '/ramsey/uuid/src/Provider/Time/SystemTimeProvider.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Fields' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/Fields.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\FieldsInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/FieldsInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/NilTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\NilUuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/NilUuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidBuilder' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidBuilder.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV1' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV1.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV2' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV2.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV3' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV3.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV4' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV4.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\UuidV5' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/UuidV5.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\Validator' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/Validator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VariantTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/VariantTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Rfc4122\\VersionTrait' => __DIR__ . '/..' . '/ramsey/uuid/src/Rfc4122/VersionTrait.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Decimal' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Decimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Hexadecimal' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Hexadecimal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Integer' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Integer.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\NumberInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/NumberInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\Time' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/Time.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Type\\TypeInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Type/TypeInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Uuid' => __DIR__ . '/..' . '/ramsey/uuid/src/Uuid.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactory' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidFactory.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidFactoryInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidFactoryInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\UuidInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/UuidInterface.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\GenericValidator' => __DIR__ . '/..' . '/ramsey/uuid/src/Validator/GenericValidator.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Ramsey\\Uuid\\Validator\\ValidatorInterface' => __DIR__ . '/..' . '/ramsey/uuid/src/Validator/ValidatorInterface.php', 'dbi_as3cf_gcp_ReturnTypeWillChange' => __DIR__ . '/..' . '/symfony/polyfill-php81/Resources/stubs/ReturnTypeWillChange.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Abstraction' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Expression' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Expression.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Literal' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Literal.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Node\\Variable' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Node/Variable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Abstraction' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/Abstraction.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\Named' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/Named.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Operator\\UnNamed' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Operator/UnNamed.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\Parser' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/Parser.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Rize\\UriTemplate\\UriTemplate' => __DIR__ . '/..' . '/rize/uri-template/src/Rize/UriTemplate/UriTemplate.php', 'dbi_as3cf_gcp_Stringable' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/Stringable.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Ctype\\Ctype' => __DIR__ . '/..' . '/symfony/polyfill-ctype/Ctype.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\Php80' => __DIR__ . '/..' . '/symfony/polyfill-php80/Php80.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php80\\PhpToken' => __DIR__ . '/..' . '/symfony/polyfill-php80/PhpToken.php', 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Symfony\\Polyfill\\Php81\\Php81' => __DIR__ . '/..' . '/symfony/polyfill-php81/Php81.php', 'dbi_as3cf_gcp_UnhandledMatchError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/UnhandledMatchError.php', 'dbi_as3cf_gcp_ValueError' => __DIR__ . '/..' . '/symfony/polyfill-php80/Resources/stubs/ValueError.php'); public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInite64427848cc1598247c6e395b9c1e5b2::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInite64427848cc1598247c6e395b9c1e5b2::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInite64427848cc1598247c6e395b9c1e5b2::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit70b5f975990d46b5c7c90dc9717b8578::$classMap; }, null, ClassLoader::class); } } diff --git a/vendor/Gcp/composer/installed.json b/vendor/Gcp/composer/installed.json index 3108fb44..31eba477 100644 --- a/vendor/Gcp/composer/installed.json +++ b/vendor/Gcp/composer/installed.json @@ -65,17 +65,17 @@ }, { "name": "firebase\/php-jwt", - "version": "v6.8.1", - "version_normalized": "6.8.1.0", + "version": "v6.10.0", + "version_normalized": "6.10.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/firebase\/php-jwt.git", - "reference": "5dbc8959427416b8ee09a100d7a8588c00fb2e26" + "reference": "a49db6f0a5033aef5143295342f1c95521b075ff" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/firebase\/php-jwt\/zipball\/5dbc8959427416b8ee09a100d7a8588c00fb2e26", - "reference": "5dbc8959427416b8ee09a100d7a8588c00fb2e26", + "url": "https:\/\/api.github.com\/repos\/firebase\/php-jwt\/zipball\/a49db6f0a5033aef5143295342f1c95521b075ff", + "reference": "a49db6f0a5033aef5143295342f1c95521b075ff", "shasum": "" }, "require": { @@ -93,7 +93,7 @@ "ext-sodium": "Support EdDSA (Ed25519) signatures", "paragonie\/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present" }, - "time": "2023-07-14T18:33:00+00:00", + "time": "2023-12-01T16:26:39+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -125,36 +125,36 @@ ], "support": { "issues": "https:\/\/github.com\/firebase\/php-jwt\/issues", - "source": "https:\/\/github.com\/firebase\/php-jwt\/tree\/v6.8.1" + "source": "https:\/\/github.com\/firebase\/php-jwt\/tree\/v6.10.0" }, "install-path": "..\/firebase\/php-jwt" }, { "name": "google\/auth", - "version": "v1.28.0", - "version_normalized": "1.28.0.0", + "version": "v1.37.1", + "version_normalized": "1.37.1.0", "source": { "type": "git", "url": "https:\/\/github.com\/googleapis\/google-auth-library-php.git", - "reference": "07f7f6305f1b7df32b2acf6e101c1225c839c7ac" + "reference": "1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/googleapis\/google-auth-library-php\/zipball\/07f7f6305f1b7df32b2acf6e101c1225c839c7ac", - "reference": "07f7f6305f1b7df32b2acf6e101c1225c839c7ac", + "url": "https:\/\/api.github.com\/repos\/googleapis\/google-auth-library-php\/zipball\/1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46", + "reference": "1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46", "shasum": "" }, "require": { "firebase\/php-jwt": "^6.0", - "guzzlehttp\/guzzle": "^6.2.1|^7.0", + "guzzlehttp\/guzzle": "^6.5.8||^7.4.5", "guzzlehttp\/psr7": "^2.4.5", "php": "^7.4||^8.0", "psr\/cache": "^1.0||^2.0||^3.0", "psr\/http-message": "^1.1||^2.0" }, "require-dev": { - "guzzlehttp\/promises": "^1.3", - "kelvinmo\/simplejwt": "0.7.0", + "guzzlehttp\/promises": "^2.0", + "kelvinmo\/simplejwt": "0.7.1", "phpseclib\/phpseclib": "^3.0", "phpspec\/prophecy-phpunit": "^2.0", "phpunit\/phpunit": "^9.0.0", @@ -164,7 +164,7 @@ "suggest": { "phpseclib\/phpseclib": "May be used in place of OpenSSL for signing strings or for token management. Please require version ^2." }, - "time": "2023-05-11T21:58:18+00:00", + "time": "2024-04-03T18:41:12+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -186,41 +186,42 @@ "support": { "docs": "https:\/\/googleapis.github.io\/google-auth-library-php\/main\/", "issues": "https:\/\/github.com\/googleapis\/google-auth-library-php\/issues", - "source": "https:\/\/github.com\/googleapis\/google-auth-library-php\/tree\/v1.28.0" + "source": "https:\/\/github.com\/googleapis\/google-auth-library-php\/tree\/v1.37.1" }, "install-path": "..\/google\/auth" }, { "name": "google\/cloud-core", - "version": "v1.52.1", - "version_normalized": "1.52.1.0", + "version": "v1.56.0", + "version_normalized": "1.56.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/googleapis\/google-cloud-php-core.git", - "reference": "8214910f79b5508d4cd1cd48f39d7970443071d5" + "reference": "35ca0fd74685c635a4c027c871de9d716c504933" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/googleapis\/google-cloud-php-core\/zipball\/8214910f79b5508d4cd1cd48f39d7970443071d5", - "reference": "8214910f79b5508d4cd1cd48f39d7970443071d5", + "url": "https:\/\/api.github.com\/repos\/googleapis\/google-cloud-php-core\/zipball\/35ca0fd74685c635a4c027c871de9d716c504933", + "reference": "35ca0fd74685c635a4c027c871de9d716c504933", "shasum": "" }, "require": { - "google\/auth": "^1.18", - "guzzlehttp\/guzzle": "^5.3|^6.5.7|^7.4.4", + "google\/auth": "^1.34", + "google\/gax": "^1.27.0", + "guzzlehttp\/guzzle": "^6.5.8|^7.4.4", "guzzlehttp\/promises": "^1.4||^2.0", - "guzzlehttp\/psr7": "^1.7|^2.0", - "monolog\/monolog": "^1.1|^2.0|^3.0", + "guzzlehttp\/psr7": "^2.6", + "monolog\/monolog": "^2.9|^3.0", "php": ">=7.4", "psr\/http-message": "^1.0|^2.0", "rize\/uri-template": "~0.3" }, "require-dev": { "erusev\/parsedown": "^1.6", - "google\/cloud-common-protos": "^0.4", - "google\/gax": "^1.19.1", + "google\/cloud-common-protos": "~0.5", "opis\/closure": "^3", - "phpdocumentor\/reflection": "^5.0", + "phpdocumentor\/reflection": "^5.3.3", + "phpdocumentor\/reflection-docblock": "^5.3", "phpspec\/prophecy-phpunit": "^2.0", "phpunit\/phpunit": "^9.0", "squizlabs\/php_codesniffer": "2.*" @@ -229,7 +230,7 @@ "opis\/closure": "May be used to serialize closures to process jobs in the batch daemon. Please require version ^3.", "symfony\/lock": "Required for the Spanner cached based session pool. Please require the following commit: 3.3.x-dev#1ba6ac9" }, - "time": "2023-07-07T20:46:38+00:00", + "time": "2024-02-23T23:49:35+00:00", "bin": [ "bin\/google-cloud-batch" ], @@ -254,35 +255,35 @@ ], "description": "Google Cloud PHP shared dependency, providing functionality useful to all components.", "support": { - "source": "https:\/\/github.com\/googleapis\/google-cloud-php-core\/tree\/v1.52.1" + "source": "https:\/\/github.com\/googleapis\/google-cloud-php-core\/tree\/v1.56.0" }, "install-path": "..\/google\/cloud-core" }, { "name": "google\/cloud-storage", - "version": "v1.33.0", - "version_normalized": "1.33.0.0", + "version": "v1.39.0", + "version_normalized": "1.39.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/googleapis\/google-cloud-php-storage.git", - "reference": "05ae33620feebe1107756b59fe0329cace3b5e13" + "reference": "2425a167578084af5c9b87fac6eb59b09b33b8f5" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/googleapis\/google-cloud-php-storage\/zipball\/05ae33620feebe1107756b59fe0329cace3b5e13", - "reference": "05ae33620feebe1107756b59fe0329cace3b5e13", + "url": "https:\/\/api.github.com\/repos\/googleapis\/google-cloud-php-storage\/zipball\/2425a167578084af5c9b87fac6eb59b09b33b8f5", + "reference": "2425a167578084af5c9b87fac6eb59b09b33b8f5", "shasum": "" }, "require": { - "google\/cloud-core": "^1.51.3", - "google\/crc32": "^0.2.0", + "google\/cloud-core": "^1.55", "php": ">=7.4", "ramsey\/uuid": "^4.2.3" }, "require-dev": { "erusev\/parsedown": "^1.6", "google\/cloud-pubsub": "^1.0", - "phpdocumentor\/reflection": "^5.0", + "phpdocumentor\/reflection": "^5.3.3", + "phpdocumentor\/reflection-docblock": "^5.3", "phpseclib\/phpseclib": "^2.0||^3.0", "phpspec\/prophecy-phpunit": "^2.0", "phpunit\/phpunit": "^9.0", @@ -292,7 +293,7 @@ "google\/cloud-pubsub": "May be used to register a topic to receive bucket notifications.", "phpseclib\/phpseclib": "May be used in place of OpenSSL for creating signed Cloud Storage URLs. Please require version ^2." }, - "time": "2023-07-07T20:46:38+00:00", + "time": "2024-02-23T23:49:35+00:00", "type": "library", "extra": { "component": { @@ -314,77 +315,331 @@ ], "description": "Cloud Storage Client for PHP", "support": { - "source": "https:\/\/github.com\/googleapis\/google-cloud-php-storage\/tree\/v1.33.0" + "source": "https:\/\/github.com\/googleapis\/google-cloud-php-storage\/tree\/v1.39.0" }, "install-path": "..\/google\/cloud-storage" }, { - "name": "google\/crc32", - "version": "v0.2.0", - "version_normalized": "0.2.0.0", + "name": "google\/common-protos", + "version": "v4.5.0", + "version_normalized": "4.5.0.0", "source": { "type": "git", - "url": "https:\/\/github.com\/google\/php-crc32.git", - "reference": "948f7945d803dcc1a375152c72f63144c2dadf23" + "url": "https:\/\/github.com\/googleapis\/common-protos-php.git", + "reference": "dfc232e90823cedca107b56e7371f2e2f35b9427" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/google\/php-crc32\/zipball\/948f7945d803dcc1a375152c72f63144c2dadf23", - "reference": "948f7945d803dcc1a375152c72f63144c2dadf23", + "url": "https:\/\/api.github.com\/repos\/googleapis\/common-protos-php\/zipball\/dfc232e90823cedca107b56e7371f2e2f35b9427", + "reference": "dfc232e90823cedca107b56e7371f2e2f35b9427", "shasum": "" }, "require": { + "google\/protobuf": "^3.6.1", "php": ">=7.4" }, "require-dev": { - "friendsofphp\/php-cs-fixer": "v3.15", - "phpunit\/phpunit": "^9" + "phpunit\/phpunit": "^9.0" }, - "time": "2023-04-16T22:44:57+00:00", + "time": "2023-11-29T21:08:16+00:00", "type": "library", "installation-source": "dist", "autoload": { "psr-4": { - "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\": "src" + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\": "src\/Api", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\": "src\/Iam", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\": "src\/Rpc", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\": "src\/Type", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\": "src\/Cloud", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\": "metadata\/Api", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\": "metadata\/Iam", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\": "metadata\/Rpc", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\": "metadata\/Type", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\": "metadata\/Cloud", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\": "metadata\/Logging" } }, "notification-url": "https:\/\/packagist.org\/downloads\/", "license": [ "Apache-2.0" ], - "authors": [ - { - "name": "Andrew Brampton", - "email": "bramp@google.com" + "description": "Google API Common Protos for PHP", + "homepage": "https:\/\/github.com\/googleapis\/common-protos-php", + "keywords": [ + "google" + ], + "support": { + "issues": "https:\/\/github.com\/googleapis\/common-protos-php\/issues", + "source": "https:\/\/github.com\/googleapis\/common-protos-php\/tree\/v4.5.0" + }, + "install-path": "..\/google\/common-protos" + }, + { + "name": "google\/gax", + "version": "v1.29.1", + "version_normalized": "1.29.1.0", + "source": { + "type": "git", + "url": "https:\/\/github.com\/googleapis\/gax-php.git", + "reference": "54a863e63ee318308637adb283f6157ccc3aabbb" + }, + "dist": { + "type": "zip", + "url": "https:\/\/api.github.com\/repos\/googleapis\/gax-php\/zipball\/54a863e63ee318308637adb283f6157ccc3aabbb", + "reference": "54a863e63ee318308637adb283f6157ccc3aabbb", + "shasum": "" + }, + "require": { + "google\/auth": "^1.34.0", + "google\/common-protos": "^4.4", + "google\/grpc-gcp": "^0.2||^0.3", + "google\/longrunning": "~0.2", + "google\/protobuf": "^3.22", + "grpc\/grpc": "^1.13", + "guzzlehttp\/promises": "^1.4||^2.0", + "guzzlehttp\/psr7": "^2.0", + "php": ">=7.4" + }, + "conflict": { + "ext-protobuf": "<3.7.0" + }, + "require-dev": { + "phpspec\/prophecy-phpunit": "^2.0", + "phpunit\/phpunit": "^9.0", + "squizlabs\/php_codesniffer": "3.*" + }, + "time": "2024-02-26T19:15:41+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\": "src", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\ApiCore\\": "metadata\/ApiCore" + } + }, + "notification-url": "https:\/\/packagist.org\/downloads\/", + "license": [ + "BSD-3-Clause" + ], + "description": "Google API Core for PHP", + "homepage": "https:\/\/github.com\/googleapis\/gax-php", + "keywords": [ + "google" + ], + "support": { + "issues": "https:\/\/github.com\/googleapis\/gax-php\/issues", + "source": "https:\/\/github.com\/googleapis\/gax-php\/tree\/v1.29.1" + }, + "install-path": "..\/google\/gax" + }, + { + "name": "google\/grpc-gcp", + "version": "v0.3.0", + "version_normalized": "0.3.0.0", + "source": { + "type": "git", + "url": "https:\/\/github.com\/GoogleCloudPlatform\/grpc-gcp-php.git", + "reference": "4d8b455a45a89f57e1552cadc41a43bc34c40456" + }, + "dist": { + "type": "zip", + "url": "https:\/\/api.github.com\/repos\/GoogleCloudPlatform\/grpc-gcp-php\/zipball\/4d8b455a45a89f57e1552cadc41a43bc34c40456", + "reference": "4d8b455a45a89f57e1552cadc41a43bc34c40456", + "shasum": "" + }, + "require": { + "google\/auth": "^1.3", + "google\/protobuf": "^v3.3.0", + "grpc\/grpc": "^v1.13.0", + "php": "^7.4||^8.0", + "psr\/cache": "^1.0.1||^2.0.0||^3.0.0" + }, + "require-dev": { + "google\/cloud-spanner": "^1.7", + "phpunit\/phpunit": "^9.0" + }, + "time": "2023-04-24T14:37:29+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\Gcp\\": "src\/" + }, + "classmap": [ + "src\/generated\/" + ] + }, + "notification-url": "https:\/\/packagist.org\/downloads\/", + "license": [ + "Apache-2.0" + ], + "description": "gRPC GCP library for channel management", + "support": { + "issues": "https:\/\/github.com\/GoogleCloudPlatform\/grpc-gcp-php\/issues", + "source": "https:\/\/github.com\/GoogleCloudPlatform\/grpc-gcp-php\/tree\/v0.3.0" + }, + "install-path": "..\/google\/grpc-gcp" + }, + { + "name": "google\/longrunning", + "version": "0.4.4", + "version_normalized": "0.4.4.0", + "source": { + "type": "git", + "url": "https:\/\/github.com\/googleapis\/php-longrunning.git", + "reference": "ce921cf2a59082b09ab04f36b1afef4686c3a9ab" + }, + "dist": { + "type": "zip", + "url": "https:\/\/api.github.com\/repos\/googleapis\/php-longrunning\/zipball\/ce921cf2a59082b09ab04f36b1afef4686c3a9ab", + "reference": "ce921cf2a59082b09ab04f36b1afef4686c3a9ab", + "shasum": "" + }, + "require-dev": { + "google\/gax": "^1.34.0", + "phpunit\/phpunit": "^9.0" + }, + "time": "2024-11-06T21:50:43+00:00", + "type": "library", + "extra": { + "component": { + "id": "longrunning", + "path": "LongRunning", + "entry": null, + "target": "googleapis\/php-longrunning" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\LongRunning\\": "src\/LongRunning", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\LongRunning\\": "src\/ApiCore\/LongRunning", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Longrunning\\": "metadata\/Longrunning" + } + }, + "notification-url": "https:\/\/packagist.org\/downloads\/", + "license": [ + "Apache-2.0" + ], + "description": "Google LongRunning Client for PHP", + "support": { + "source": "https:\/\/github.com\/googleapis\/php-longrunning\/tree\/v0.4.4" + }, + "install-path": "..\/google\/longrunning" + }, + { + "name": "google\/protobuf", + "version": "v3.25.5", + "version_normalized": "3.25.5.0", + "source": { + "type": "git", + "url": "https:\/\/github.com\/protocolbuffers\/protobuf-php.git", + "reference": "dd2cf3f7b577dced3851c2ea76c3daa9f8aa0ff4" + }, + "dist": { + "type": "zip", + "url": "https:\/\/api.github.com\/repos\/protocolbuffers\/protobuf-php\/zipball\/dd2cf3f7b577dced3851c2ea76c3daa9f8aa0ff4", + "reference": "dd2cf3f7b577dced3851c2ea76c3daa9f8aa0ff4", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit\/phpunit": ">=5.0.0" + }, + "suggest": { + "ext-bcmath": "Need to support JSON deserialization" + }, + "time": "2024-09-18T22:04:15+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Protobuf\\": "src\/Google\/Protobuf", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Protobuf\\": "src\/GPBMetadata\/Google\/Protobuf" + } + }, + "notification-url": "https:\/\/packagist.org\/downloads\/", + "license": [ + "BSD-3-Clause" + ], + "description": "proto library for PHP", + "homepage": "https:\/\/developers.google.com\/protocol-buffers\/", + "keywords": [ + "proto" + ], + "support": { + "source": "https:\/\/github.com\/protocolbuffers\/protobuf-php\/tree\/v3.25.5" + }, + "install-path": "..\/google\/protobuf" + }, + { + "name": "grpc\/grpc", + "version": "1.57.0", + "version_normalized": "1.57.0.0", + "source": { + "type": "git", + "url": "https:\/\/github.com\/grpc\/grpc-php.git", + "reference": "b610c42022ed3a22f831439cb93802f2a4502fdf" + }, + "dist": { + "type": "zip", + "url": "https:\/\/api.github.com\/repos\/grpc\/grpc-php\/zipball\/b610c42022ed3a22f831439cb93802f2a4502fdf", + "reference": "b610c42022ed3a22f831439cb93802f2a4502fdf", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "google\/auth": "^v1.3.0" + }, + "suggest": { + "ext-protobuf": "For better performance, install the protobuf C extension.", + "google\/protobuf": "To get started using grpc quickly, install the native protobuf library." + }, + "time": "2023-08-14T23:57:54+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Grpc\\": "src\/lib\/" } + }, + "notification-url": "https:\/\/packagist.org\/downloads\/", + "license": [ + "Apache-2.0" + ], + "description": "gRPC library for PHP", + "homepage": "https:\/\/grpc.io", + "keywords": [ + "rpc" ], - "description": "Various CRC32 implementations", - "homepage": "https:\/\/github.com\/google\/php-crc32", "support": { - "issues": "https:\/\/github.com\/google\/php-crc32\/issues", - "source": "https:\/\/github.com\/google\/php-crc32\/tree\/v0.2.0" + "source": "https:\/\/github.com\/grpc\/grpc-php\/tree\/v1.57.0" }, - "install-path": "..\/google\/crc32" + "install-path": "..\/grpc\/grpc" }, { "name": "guzzlehttp\/guzzle", - "version": "7.7.0", - "version_normalized": "7.7.0.0", + "version": "7.9.2", + "version_normalized": "7.9.2.0", "source": { "type": "git", "url": "https:\/\/github.com\/guzzle\/guzzle.git", - "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5" + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/guzzle\/guzzle\/zipball\/fb7566caccf22d74d1ab270de3551f72a58399f5", - "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5", + "url": "https:\/\/api.github.com\/repos\/guzzle\/guzzle\/zipball\/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp\/promises": "^1.5.3 || ^2.0", - "guzzlehttp\/psr7": "^1.9.1 || ^2.4.5", + "guzzlehttp\/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp\/psr7": "^2.7.0", "php": "^7.2.5 || ^8.0", "psr\/http-client": "^1.0", "symfony\/deprecation-contracts": "^2.2 || ^3.0" @@ -393,11 +648,11 @@ "psr\/http-client-implementation": "1.0" }, "require-dev": { - "bamarni\/composer-bin-plugin": "^1.8.1", + "bamarni\/composer-bin-plugin": "^1.8.2", "ext-curl": "*", - "php-http\/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "guzzle\/client-integration-tests": "3.0.2", "php-http\/message-factory": "^1.1", - "phpunit\/phpunit": "^8.5.29 || ^9.5.23", + "phpunit\/phpunit": "^8.5.39 || ^9.6.20", "psr\/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -405,7 +660,7 @@ "ext-intl": "Required for Internationalized Domain Name (IDN) support", "psr\/log": "Required for using the Log middleware" }, - "time": "2023-05-21T14:04:53+00:00", + "time": "2024-07-24T11:22:20+00:00", "type": "library", "extra": { "bamarni-bin": { @@ -477,7 +732,7 @@ ], "support": { "issues": "https:\/\/github.com\/guzzle\/guzzle\/issues", - "source": "https:\/\/github.com\/guzzle\/guzzle\/tree\/7.7.0" + "source": "https:\/\/github.com\/guzzle\/guzzle\/tree\/7.9.2" }, "funding": [ { @@ -497,27 +752,27 @@ }, { "name": "guzzlehttp\/promises", - "version": "2.0.1", - "version_normalized": "2.0.1.0", + "version": "2.0.4", + "version_normalized": "2.0.4.0", "source": { "type": "git", "url": "https:\/\/github.com\/guzzle\/promises.git", - "reference": "111166291a0f8130081195ac4556a5587d7f1b5d" + "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/guzzle\/promises\/zipball\/111166291a0f8130081195ac4556a5587d7f1b5d", - "reference": "111166291a0f8130081195ac4556a5587d7f1b5d", + "url": "https:\/\/api.github.com\/repos\/guzzle\/promises\/zipball\/f9c436286ab2892c7db7be8c8da4ef61ccf7b455", + "reference": "f9c436286ab2892c7db7be8c8da4ef61ccf7b455", "shasum": "" }, "require": { "php": "^7.2.5 || ^8.0" }, "require-dev": { - "bamarni\/composer-bin-plugin": "^1.8.1", - "phpunit\/phpunit": "^8.5.29 || ^9.5.23" + "bamarni\/composer-bin-plugin": "^1.8.2", + "phpunit\/phpunit": "^8.5.39 || ^9.6.20" }, - "time": "2023-08-03T15:11:55+00:00", + "time": "2024-10-17T10:06:22+00:00", "type": "library", "extra": { "bamarni-bin": { @@ -563,7 +818,7 @@ ], "support": { "issues": "https:\/\/github.com\/guzzle\/promises\/issues", - "source": "https:\/\/github.com\/guzzle\/promises\/tree\/2.0.1" + "source": "https:\/\/github.com\/guzzle\/promises\/tree\/2.0.4" }, "funding": [ { @@ -583,17 +838,17 @@ }, { "name": "guzzlehttp\/psr7", - "version": "2.6.0", - "version_normalized": "2.6.0.0", + "version": "2.7.0", + "version_normalized": "2.7.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/guzzle\/psr7.git", - "reference": "8bd7c33a0734ae1c5d074360512beb716bef3f77" + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/guzzle\/psr7\/zipball\/8bd7c33a0734ae1c5d074360512beb716bef3f77", - "reference": "8bd7c33a0734ae1c5d074360512beb716bef3f77", + "url": "https:\/\/api.github.com\/repos\/guzzle\/psr7\/zipball\/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", "shasum": "" }, "require": { @@ -607,14 +862,14 @@ "psr\/http-message-implementation": "1.0" }, "require-dev": { - "bamarni\/composer-bin-plugin": "^1.8.1", - "http-interop\/http-factory-tests": "^0.9", - "phpunit\/phpunit": "^8.5.29 || ^9.5.23" + "bamarni\/composer-bin-plugin": "^1.8.2", + "http-interop\/http-factory-tests": "0.9.0", + "phpunit\/phpunit": "^8.5.39 || ^9.6.20" }, "suggest": { "laminas\/laminas-httphandlerrunner": "Emit PSR-7 responses" }, - "time": "2023-08-03T15:06:02+00:00", + "time": "2024-07-18T11:15:46+00:00", "type": "library", "extra": { "bamarni-bin": { @@ -682,7 +937,7 @@ ], "support": { "issues": "https:\/\/github.com\/guzzle\/psr7\/issues", - "source": "https:\/\/github.com\/guzzle\/psr7\/tree\/2.6.0" + "source": "https:\/\/github.com\/guzzle\/psr7\/tree\/2.7.0" }, "funding": [ { @@ -702,17 +957,17 @@ }, { "name": "monolog\/monolog", - "version": "2.9.1", - "version_normalized": "2.9.1.0", + "version": "2.10.0", + "version_normalized": "2.10.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/Seldaek\/monolog.git", - "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1" + "reference": "5cf826f2991858b54d5c3809bee745560a1042a7" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/Seldaek\/monolog\/zipball\/f259e2b15fb95494c83f52d3caad003bbf5ffaa1", - "reference": "f259e2b15fb95494c83f52d3caad003bbf5ffaa1", + "url": "https:\/\/api.github.com\/repos\/Seldaek\/monolog\/zipball\/5cf826f2991858b54d5c3809bee745560a1042a7", + "reference": "5cf826f2991858b54d5c3809bee745560a1042a7", "shasum": "" }, "require": { @@ -733,8 +988,8 @@ "mongodb\/mongodb": "^1.8", "php-amqplib\/php-amqplib": "~2.4 || ^3", "phpspec\/prophecy": "^1.15", - "phpstan\/phpstan": "^0.12.91", - "phpunit\/phpunit": "^8.5.14", + "phpstan\/phpstan": "^1.10", + "phpunit\/phpunit": "^8.5.38 || ^9.6.19", "predis\/predis": "^1.1 || ^2.0", "rollbar\/rollbar": "^1.3 || ^2 || ^3", "ruflin\/elastica": "^7", @@ -758,7 +1013,7 @@ "rollbar\/rollbar": "Allow sending log messages to Rollbar", "ruflin\/elastica": "Allow sending log messages to an Elastic Search server" }, - "time": "2023-02-06T13:44:46+00:00", + "time": "2024-11-12T12:43:37+00:00", "type": "library", "extra": { "branch-alias": { @@ -791,7 +1046,7 @@ ], "support": { "issues": "https:\/\/github.com\/Seldaek\/monolog\/issues", - "source": "https:\/\/github.com\/Seldaek\/monolog\/tree\/2.9.1" + "source": "https:\/\/github.com\/Seldaek\/monolog\/tree\/2.10.0" }, "funding": [ { @@ -859,24 +1114,24 @@ }, { "name": "psr\/http-client", - "version": "1.0.2", - "version_normalized": "1.0.2.0", + "version": "1.0.3", + "version_normalized": "1.0.3.0", "source": { "type": "git", "url": "https:\/\/github.com\/php-fig\/http-client.git", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31" + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/php-fig\/http-client\/zipball\/0955afe48220520692d2d09f7ab7e0f93ffd6a31", - "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31", + "url": "https:\/\/api.github.com\/repos\/php-fig\/http-client\/zipball\/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", "psr\/http-message": "^1.0 || ^2.0" }, - "time": "2023-04-10T20:12:12+00:00", + "time": "2023-09-23T14:17:50+00:00", "type": "library", "extra": { "branch-alias": { @@ -908,30 +1163,30 @@ "psr-18" ], "support": { - "source": "https:\/\/github.com\/php-fig\/http-client\/tree\/1.0.2" + "source": "https:\/\/github.com\/php-fig\/http-client" }, "install-path": "..\/psr\/http-client" }, { "name": "psr\/http-factory", - "version": "1.0.2", - "version_normalized": "1.0.2.0", + "version": "1.1.0", + "version_normalized": "1.1.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/php-fig\/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/php-fig\/http-factory\/zipball\/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", + "url": "https:\/\/api.github.com\/repos\/php-fig\/http-factory\/zipball\/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", "shasum": "" }, "require": { - "php": ">=7.0.0", + "php": ">=7.1", "psr\/http-message": "^1.0 || ^2.0" }, - "time": "2023-04-10T20:10:41+00:00", + "time": "2024-04-15T12:06:14+00:00", "type": "library", "extra": { "branch-alias": { @@ -954,7 +1209,7 @@ "homepage": "https:\/\/www.php-fig.org\/" } ], - "description": "Common interfaces for PSR-7 HTTP message factories", + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", "keywords": [ "factory", "http", @@ -966,7 +1221,7 @@ "response" ], "support": { - "source": "https:\/\/github.com\/php-fig\/http-factory\/tree\/1.0.2" + "source": "https:\/\/github.com\/php-fig\/http-factory" }, "install-path": "..\/psr\/http-factory" }, @@ -1322,17 +1577,17 @@ }, { "name": "rize\/uri-template", - "version": "0.3.5", - "version_normalized": "0.3.5.0", + "version": "0.3.8", + "version_normalized": "0.3.8.0", "source": { "type": "git", "url": "https:\/\/github.com\/rize\/UriTemplate.git", - "reference": "5ed4ba8ea34af84485dea815d4b6b620794d1168" + "reference": "34a5b96d0b65a5dddb7d20f09b6527a43faede24" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/rize\/UriTemplate\/zipball\/5ed4ba8ea34af84485dea815d4b6b620794d1168", - "reference": "5ed4ba8ea34af84485dea815d4b6b620794d1168", + "url": "https:\/\/api.github.com\/repos\/rize\/UriTemplate\/zipball\/34a5b96d0b65a5dddb7d20f09b6527a43faede24", + "reference": "34a5b96d0b65a5dddb7d20f09b6527a43faede24", "shasum": "" }, "require": { @@ -1341,7 +1596,7 @@ "require-dev": { "phpunit\/phpunit": "~4.8.36" }, - "time": "2022-10-12T17:22:51+00:00", + "time": "2024-08-30T07:09:40+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -1367,7 +1622,7 @@ ], "support": { "issues": "https:\/\/github.com\/rize\/UriTemplate\/issues", - "source": "https:\/\/github.com\/rize\/UriTemplate\/tree\/0.3.5" + "source": "https:\/\/github.com\/rize\/UriTemplate\/tree\/0.3.8" }, "funding": [ { @@ -1387,23 +1642,23 @@ }, { "name": "symfony\/deprecation-contracts", - "version": "v2.5.2", - "version_normalized": "2.5.2.0", + "version": "v2.5.3", + "version_normalized": "2.5.3.0", "source": { "type": "git", "url": "https:\/\/github.com\/symfony\/deprecation-contracts.git", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66" + "reference": "80d075412b557d41002320b96a096ca65aa2c98d" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/symfony\/deprecation-contracts\/zipball\/e8b495ea28c1d97b5e0c121748d6f9b53d075c66", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66", + "url": "https:\/\/api.github.com\/repos\/symfony\/deprecation-contracts\/zipball\/80d075412b557d41002320b96a096ca65aa2c98d", + "reference": "80d075412b557d41002320b96a096ca65aa2c98d", "shasum": "" }, "require": { "php": ">=7.1" }, - "time": "2022-01-02T09:53:40+00:00", + "time": "2023-01-24T14:02:46+00:00", "type": "library", "extra": { "branch-alias": { @@ -1437,7 +1692,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https:\/\/symfony.com", "support": { - "source": "https:\/\/github.com\/symfony\/deprecation-contracts\/tree\/v2.5.2" + "source": "https:\/\/github.com\/symfony\/deprecation-contracts\/tree\/v2.5.3" }, "funding": [ { @@ -1457,21 +1712,21 @@ }, { "name": "symfony\/polyfill-ctype", - "version": "v1.27.0", - "version_normalized": "1.27.0.0", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/symfony\/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-ctype\/zipball\/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-ctype\/zipball\/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=7.2" }, "provide": { "ext-ctype": "*" @@ -1479,12 +1734,9 @@ "suggest": { "ext-ctype": "For best performance" }, - "time": "2022-11-03T14:55:06+00:00", + "time": "2024-09-09T11:45:10+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony\/polyfill", "url": "https:\/\/github.com\/symfony\/polyfill" @@ -1522,7 +1774,7 @@ "portable" ], "support": { - "source": "https:\/\/github.com\/symfony\/polyfill-ctype\/tree\/v1.27.0" + "source": "https:\/\/github.com\/symfony\/polyfill-ctype\/tree\/v1.31.0" }, "funding": [ { @@ -1542,28 +1794,25 @@ }, { "name": "symfony\/polyfill-php80", - "version": "v1.27.0", - "version_normalized": "1.27.0.0", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/symfony\/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-php80\/zipball\/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-php80\/zipball\/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=7.2" }, - "time": "2022-11-03T14:55:06+00:00", + "time": "2024-09-09T11:45:10+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony\/polyfill", "url": "https:\/\/github.com\/symfony\/polyfill" @@ -1608,7 +1857,7 @@ "shim" ], "support": { - "source": "https:\/\/github.com\/symfony\/polyfill-php80\/tree\/v1.27.0" + "source": "https:\/\/github.com\/symfony\/polyfill-php80\/tree\/v1.31.0" }, "funding": [ { @@ -1628,28 +1877,25 @@ }, { "name": "symfony\/polyfill-php81", - "version": "v1.27.0", - "version_normalized": "1.27.0.0", + "version": "v1.31.0", + "version_normalized": "1.31.0.0", "source": { "type": "git", "url": "https:\/\/github.com\/symfony\/polyfill-php81.git", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c" }, "dist": { "type": "zip", - "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-php81\/zipball\/707403074c8ea6e2edaf8794b0157a0bfa52157a", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", + "url": "https:\/\/api.github.com\/repos\/symfony\/polyfill-php81\/zipball\/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=7.2" }, - "time": "2022-11-03T14:55:06+00:00", + "time": "2024-09-09T11:45:10+00:00", "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony\/polyfill", "url": "https:\/\/github.com\/symfony\/polyfill" @@ -1690,7 +1936,7 @@ "shim" ], "support": { - "source": "https:\/\/github.com\/symfony\/polyfill-php81\/tree\/v1.27.0" + "source": "https:\/\/github.com\/symfony\/polyfill-php81\/tree\/v1.31.0" }, "funding": [ { diff --git a/vendor/Gcp/composer/installed.php b/vendor/Gcp/composer/installed.php index e25f4019..094c7771 100644 --- a/vendor/Gcp/composer/installed.php +++ b/vendor/Gcp/composer/installed.php @@ -2,4 +2,4 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp; -return array('root' => array('name' => '__root__', 'pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'reference' => '5eb952d91c8b7a2080117fecc21c3b9aaf87f59a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'reference' => '5eb952d91c8b7a2080117fecc21c3b9aaf87f59a', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'brick/math' => array('pretty_version' => '0.9.3', 'version' => '0.9.3.0', 'reference' => 'ca57d18f028f84f777b2168cd1911b0dee2343ae', 'type' => 'library', 'install_path' => __DIR__ . '/../brick/math', 'aliases' => array(), 'dev_requirement' => \false), 'firebase/php-jwt' => array('pretty_version' => 'v6.8.1', 'version' => '6.8.1.0', 'reference' => '5dbc8959427416b8ee09a100d7a8588c00fb2e26', 'type' => 'library', 'install_path' => __DIR__ . '/../firebase/php-jwt', 'aliases' => array(), 'dev_requirement' => \false), 'google/auth' => array('pretty_version' => 'v1.28.0', 'version' => '1.28.0.0', 'reference' => '07f7f6305f1b7df32b2acf6e101c1225c839c7ac', 'type' => 'library', 'install_path' => __DIR__ . '/../google/auth', 'aliases' => array(), 'dev_requirement' => \false), 'google/cloud-core' => array('pretty_version' => 'v1.52.1', 'version' => '1.52.1.0', 'reference' => '8214910f79b5508d4cd1cd48f39d7970443071d5', 'type' => 'library', 'install_path' => __DIR__ . '/../google/cloud-core', 'aliases' => array(), 'dev_requirement' => \false), 'google/cloud-storage' => array('pretty_version' => 'v1.33.0', 'version' => '1.33.0.0', 'reference' => '05ae33620feebe1107756b59fe0329cace3b5e13', 'type' => 'library', 'install_path' => __DIR__ . '/../google/cloud-storage', 'aliases' => array(), 'dev_requirement' => \false), 'google/crc32' => array('pretty_version' => 'v0.2.0', 'version' => '0.2.0.0', 'reference' => '948f7945d803dcc1a375152c72f63144c2dadf23', 'type' => 'library', 'install_path' => __DIR__ . '/../google/crc32', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.7.0', 'version' => '7.7.0.0', 'reference' => 'fb7566caccf22d74d1ab270de3551f72a58399f5', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.0.1', 'version' => '2.0.1.0', 'reference' => '111166291a0f8130081195ac4556a5587d7f1b5d', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.6.0', 'version' => '2.6.0.0', 'reference' => '8bd7c33a0734ae1c5d074360512beb716bef3f77', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.9.1', 'version' => '2.9.1.0', 'reference' => 'f259e2b15fb95494c83f52d3caad003bbf5ffaa1', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'psr/cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/cache', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client' => array('pretty_version' => '1.0.2', 'version' => '1.0.2.0', 'reference' => '0955afe48220520692d2d09f7ab7e0f93ffd6a31', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.0.2', 'version' => '1.0.2.0', 'reference' => 'e616d01114759c4c489f93b099585439f795fe35', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'ramsey/collection' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'ad7475d1c9e70b190ecffc58f2d989416af339b4', 'type' => 'library', 'install_path' => __DIR__ . '/../ramsey/collection', 'aliases' => array(), 'dev_requirement' => \false), 'ramsey/uuid' => array('pretty_version' => '4.2.3', 'version' => '4.2.3.0', 'reference' => 'fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df', 'type' => 'library', 'install_path' => __DIR__ . '/../ramsey/uuid', 'aliases' => array(), 'dev_requirement' => \false), 'rhumsaa/uuid' => array('dev_requirement' => \false, 'replaced' => array(0 => '4.2.3')), 'rize/uri-template' => array('pretty_version' => '0.3.5', 'version' => '0.3.5.0', 'reference' => '5ed4ba8ea34af84485dea815d4b6b620794d1168', 'type' => 'library', 'install_path' => __DIR__ . '/../rize/uri-template', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php81' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '707403074c8ea6e2edaf8794b0157a0bfa52157a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php81', 'aliases' => array(), 'dev_requirement' => \false))); +return array('root' => array('name' => '__root__', 'pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'reference' => 'f4ea6d9690c1111d9f79f558c7a77eeddfcb4935', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \true), 'versions' => array('__root__' => array('pretty_version' => 'dev-develop', 'version' => 'dev-develop', 'reference' => 'f4ea6d9690c1111d9f79f558c7a77eeddfcb4935', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false), 'brick/math' => array('pretty_version' => '0.9.3', 'version' => '0.9.3.0', 'reference' => 'ca57d18f028f84f777b2168cd1911b0dee2343ae', 'type' => 'library', 'install_path' => __DIR__ . '/../brick/math', 'aliases' => array(), 'dev_requirement' => \false), 'firebase/php-jwt' => array('pretty_version' => 'v6.10.0', 'version' => '6.10.0.0', 'reference' => 'a49db6f0a5033aef5143295342f1c95521b075ff', 'type' => 'library', 'install_path' => __DIR__ . '/../firebase/php-jwt', 'aliases' => array(), 'dev_requirement' => \false), 'google/auth' => array('pretty_version' => 'v1.37.1', 'version' => '1.37.1.0', 'reference' => '1a7de77b72e6ac60dccf0e6478c4c1005bb0ff46', 'type' => 'library', 'install_path' => __DIR__ . '/../google/auth', 'aliases' => array(), 'dev_requirement' => \false), 'google/cloud-core' => array('pretty_version' => 'v1.56.0', 'version' => '1.56.0.0', 'reference' => '35ca0fd74685c635a4c027c871de9d716c504933', 'type' => 'library', 'install_path' => __DIR__ . '/../google/cloud-core', 'aliases' => array(), 'dev_requirement' => \false), 'google/cloud-storage' => array('pretty_version' => 'v1.39.0', 'version' => '1.39.0.0', 'reference' => '2425a167578084af5c9b87fac6eb59b09b33b8f5', 'type' => 'library', 'install_path' => __DIR__ . '/../google/cloud-storage', 'aliases' => array(), 'dev_requirement' => \false), 'google/common-protos' => array('pretty_version' => 'v4.5.0', 'version' => '4.5.0.0', 'reference' => 'dfc232e90823cedca107b56e7371f2e2f35b9427', 'type' => 'library', 'install_path' => __DIR__ . '/../google/common-protos', 'aliases' => array(), 'dev_requirement' => \false), 'google/gax' => array('pretty_version' => 'v1.29.1', 'version' => '1.29.1.0', 'reference' => '54a863e63ee318308637adb283f6157ccc3aabbb', 'type' => 'library', 'install_path' => __DIR__ . '/../google/gax', 'aliases' => array(), 'dev_requirement' => \false), 'google/grpc-gcp' => array('pretty_version' => 'v0.3.0', 'version' => '0.3.0.0', 'reference' => '4d8b455a45a89f57e1552cadc41a43bc34c40456', 'type' => 'library', 'install_path' => __DIR__ . '/../google/grpc-gcp', 'aliases' => array(), 'dev_requirement' => \false), 'google/longrunning' => array('pretty_version' => '0.4.4', 'version' => '0.4.4.0', 'reference' => 'ce921cf2a59082b09ab04f36b1afef4686c3a9ab', 'type' => 'library', 'install_path' => __DIR__ . '/../google/longrunning', 'aliases' => array(), 'dev_requirement' => \false), 'google/protobuf' => array('pretty_version' => 'v3.25.5', 'version' => '3.25.5.0', 'reference' => 'dd2cf3f7b577dced3851c2ea76c3daa9f8aa0ff4', 'type' => 'library', 'install_path' => __DIR__ . '/../google/protobuf', 'aliases' => array(), 'dev_requirement' => \false), 'grpc/grpc' => array('pretty_version' => '1.57.0', 'version' => '1.57.0.0', 'reference' => 'b610c42022ed3a22f831439cb93802f2a4502fdf', 'type' => 'library', 'install_path' => __DIR__ . '/../grpc/grpc', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '7.9.2', 'version' => '7.9.2.0', 'reference' => 'd281ed313b989f213357e3be1a179f02196ac99b', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '2.0.4', 'version' => '2.0.4.0', 'reference' => 'f9c436286ab2892c7db7be8c8da4ef61ccf7b455', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '2.7.0', 'version' => '2.7.0.0', 'reference' => 'a70f5c95fb43bc83f07c9c948baa0dc1829bf201', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'monolog/monolog' => array('pretty_version' => '2.10.0', 'version' => '2.10.0.0', 'reference' => '5cf826f2991858b54d5c3809bee745560a1042a7', 'type' => 'library', 'install_path' => __DIR__ . '/../monolog/monolog', 'aliases' => array(), 'dev_requirement' => \false), 'psr/cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/cache', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client' => array('pretty_version' => '1.0.3', 'version' => '1.0.3.0', 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-client-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-factory' => array('pretty_version' => '1.1.0', 'version' => '1.1.0.0', 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-factory', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-factory-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0.0 || 2.0.0 || 3.0.0')), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'ramsey/collection' => array('pretty_version' => '1.3.0', 'version' => '1.3.0.0', 'reference' => 'ad7475d1c9e70b190ecffc58f2d989416af339b4', 'type' => 'library', 'install_path' => __DIR__ . '/../ramsey/collection', 'aliases' => array(), 'dev_requirement' => \false), 'ramsey/uuid' => array('pretty_version' => '4.2.3', 'version' => '4.2.3.0', 'reference' => 'fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df', 'type' => 'library', 'install_path' => __DIR__ . '/../ramsey/uuid', 'aliases' => array(), 'dev_requirement' => \false), 'rhumsaa/uuid' => array('dev_requirement' => \false, 'replaced' => array(0 => '4.2.3')), 'rize/uri-template' => array('pretty_version' => '0.3.8', 'version' => '0.3.8.0', 'reference' => '34a5b96d0b65a5dddb7d20f09b6527a43faede24', 'type' => 'library', 'install_path' => __DIR__ . '/../rize/uri-template', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.3', 'version' => '2.5.3.0', 'reference' => '80d075412b557d41002320b96a096ca65aa2c98d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.31.0', 'version' => '1.31.0.0', 'reference' => 'a3cc8b044a6ea513310cbd48ef7333b384945638', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.31.0', 'version' => '1.31.0.0', 'reference' => '60328e362d4c2c802a54fcbf04f9d3fb892b4cf8', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php81' => array('pretty_version' => 'v1.31.0', 'version' => '1.31.0.0', 'reference' => '4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php81', 'aliases' => array(), 'dev_requirement' => \false))); diff --git a/vendor/Gcp/firebase/php-jwt/CHANGELOG.md b/vendor/Gcp/firebase/php-jwt/CHANGELOG.md index 353766ee..644fa0be 100644 --- a/vendor/Gcp/firebase/php-jwt/CHANGELOG.md +++ b/vendor/Gcp/firebase/php-jwt/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [6.10.0](https://github.com/firebase/php-jwt/compare/v6.9.0...v6.10.0) (2023-11-28) + + +### Features + +* allow typ header override ([#546](https://github.com/firebase/php-jwt/issues/546)) ([79cb30b](https://github.com/firebase/php-jwt/commit/79cb30b729a22931b2fbd6b53f20629a83031ba9)) + +## [6.9.0](https://github.com/firebase/php-jwt/compare/v6.8.1...v6.9.0) (2023-10-04) + + +### Features + +* add payload to jwt exception ([#521](https://github.com/firebase/php-jwt/issues/521)) ([175edf9](https://github.com/firebase/php-jwt/commit/175edf958bb61922ec135b2333acf5622f2238a2)) + ## [6.8.1](https://github.com/firebase/php-jwt/compare/v6.8.0...v6.8.1) (2023-07-14) diff --git a/vendor/Gcp/firebase/php-jwt/src/BeforeValidException.php b/vendor/Gcp/firebase/php-jwt/src/BeforeValidException.php index 4a807888..6a83eb04 100644 --- a/vendor/Gcp/firebase/php-jwt/src/BeforeValidException.php +++ b/vendor/Gcp/firebase/php-jwt/src/BeforeValidException.php @@ -2,6 +2,15 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp\Firebase\JWT; -class BeforeValidException extends \UnexpectedValueException +class BeforeValidException extends \UnexpectedValueException implements JWTExceptionWithPayloadInterface { + private object $payload; + public function setPayload(object $payload) : void + { + $this->payload = $payload; + } + public function getPayload() : object + { + return $this->payload; + } } diff --git a/vendor/Gcp/firebase/php-jwt/src/ExpiredException.php b/vendor/Gcp/firebase/php-jwt/src/ExpiredException.php index eda4c205..abb44fe8 100644 --- a/vendor/Gcp/firebase/php-jwt/src/ExpiredException.php +++ b/vendor/Gcp/firebase/php-jwt/src/ExpiredException.php @@ -2,6 +2,15 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp\Firebase\JWT; -class ExpiredException extends \UnexpectedValueException +class ExpiredException extends \UnexpectedValueException implements JWTExceptionWithPayloadInterface { + private object $payload; + public function setPayload(object $payload) : void + { + $this->payload = $payload; + } + public function getPayload() : object + { + return $this->payload; + } } diff --git a/vendor/Gcp/firebase/php-jwt/src/JWT.php b/vendor/Gcp/firebase/php-jwt/src/JWT.php index fa40ce88..f1f65b05 100644 --- a/vendor/Gcp/firebase/php-jwt/src/JWT.php +++ b/vendor/Gcp/firebase/php-jwt/src/JWT.php @@ -130,17 +130,23 @@ public static function decode(string $jwt, $keyOrKeyArray, stdClass &$headers = // Check the nbf if it is defined. This is the time that the // token can actually be used. If it's not yet that time, abort. if (isset($payload->nbf) && \floor($payload->nbf) > $timestamp + static::$leeway) { - throw new BeforeValidException('Cannot handle token with nbf prior to ' . \date(DateTime::ISO8601, (int) $payload->nbf)); + $ex = new BeforeValidException('Cannot handle token with nbf prior to ' . \date(DateTime::ISO8601, (int) $payload->nbf)); + $ex->setPayload($payload); + throw $ex; } // Check that this token has been created before 'now'. This prevents // using tokens that have been created for later use (and haven't // correctly used the nbf claim). if (!isset($payload->nbf) && isset($payload->iat) && \floor($payload->iat) > $timestamp + static::$leeway) { - throw new BeforeValidException('Cannot handle token with iat prior to ' . \date(DateTime::ISO8601, (int) $payload->iat)); + $ex = new BeforeValidException('Cannot handle token with iat prior to ' . \date(DateTime::ISO8601, (int) $payload->iat)); + $ex->setPayload($payload); + throw $ex; } // Check if this token has expired. if (isset($payload->exp) && $timestamp - static::$leeway >= $payload->exp) { - throw new ExpiredException('Expired token'); + $ex = new ExpiredException('Expired token'); + $ex->setPayload($payload); + throw $ex; } return $payload; } @@ -161,13 +167,14 @@ public static function decode(string $jwt, $keyOrKeyArray, stdClass &$headers = */ public static function encode(array $payload, $key, string $alg, string $keyId = null, array $head = null) : string { - $header = ['typ' => 'JWT', 'alg' => $alg]; + $header = ['typ' => 'JWT']; + if (isset($head) && \is_array($head)) { + $header = \array_merge($header, $head); + } + $header['alg'] = $alg; if ($keyId !== null) { $header['kid'] = $keyId; } - if (isset($head) && \is_array($head)) { - $header = \array_merge($head, $header); - } $segments = []; $segments[] = static::urlsafeB64Encode((string) static::jsonEncode($header)); $segments[] = static::urlsafeB64Encode((string) static::jsonEncode($payload)); diff --git a/vendor/Gcp/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php b/vendor/Gcp/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php new file mode 100644 index 00000000..96ea40b0 --- /dev/null +++ b/vendor/Gcp/firebase/php-jwt/src/JWTExceptionWithPayloadInterface.php @@ -0,0 +1,20 @@ + **Credentials** in -the [Google Developers Console][developer console] and select -**Service account** from the **Add credentials** dropdown. +For more information, see [Set up Application Default Credentials][set-up-adc]. -> This file is your *only copy* of these credentials. It should never be -> committed with your source code, and should be stored securely. - -Once downloaded, store the path to this file in the -`GOOGLE_APPLICATION_CREDENTIALS` environment variable. - -```php -putenv('GOOGLE_APPLICATION_CREDENTIALS=/path/to/my/credentials.json'); -``` - -> PHP's `putenv` function is just one way to set an environment variable. -> Consider using `.htaccess` or apache configuration files as well. - -#### Enable the API you want to use +### Enable the API you want to use Before making your API call, you must be sure the API you're calling has been enabled. Go to **APIs & Auth** > **APIs** in the [Google Developers Console][developer console] and enable the APIs you'd like to call. For the example below, you must enable the `Drive API`. -#### Call the APIs +### Call the APIs As long as you update the environment variable below to point to *your* JSON credentials file, the following code should output a list of your Drive files. @@ -257,6 +241,18 @@ print_r((string) $response->getBody()); [iap-proxy-header]: https://cloud.google.com/iap/docs/authentication-howto#authenticating_from_proxy-authorization_header +#### External credentials (Workload identity federation) + +Using workload identity federation, your application can access Google Cloud resources from Amazon Web Services (AWS), +Microsoft Azure or any identity provider that supports OpenID Connect (OIDC). + +Traditionally, applications running outside Google Cloud have used service account keys to access Google Cloud +resources. Using identity federation, you can allow your workload to impersonate a service account. This lets you access +Google Cloud resources directly, eliminating the maintenance and security burden associated with service account keys. + +Follow the detailed instructions on how to +[Configure Workload Identity Federation](https://cloud.google.com/iam/docs/workload-identity-federation-with-other-clouds). + #### Verifying JWTs If you are [using Google ID tokens to authenticate users][google-id-tokens], use @@ -304,9 +300,10 @@ hesitate to about the client or APIs on [StackOverflow](http://stackoverflow.com). [google-apis-php-client]: https://github.com/google/google-api-php-client -[application default credentials]: https://developers.google.com/accounts/docs/application-default-credentials +[application default credentials]: https://cloud.google.com/docs/authentication/application-default-credentials [contributing]: https://github.com/google/google-auth-library-php/tree/main/.github/CONTRIBUTING.md [copying]: https://github.com/google/google-auth-library-php/tree/main/COPYING [Guzzle]: https://github.com/guzzle/guzzle [Guzzle 5]: http://docs.guzzlephp.org/en/5.3 [developer console]: https://console.developers.google.com +[set-up-adc]: https://cloud.google.com/docs/authentication/provide-credentials-adc diff --git a/vendor/Gcp/google/auth/VERSION b/vendor/Gcp/google/auth/VERSION new file mode 100644 index 00000000..7aa332e4 --- /dev/null +++ b/vendor/Gcp/google/auth/VERSION @@ -0,0 +1 @@ +1.33.0 diff --git a/vendor/Gcp/google/auth/composer.json b/vendor/Gcp/google/auth/composer.json index 47f4be83..d304ae79 100644 --- a/vendor/Gcp/google/auth/composer.json +++ b/vendor/Gcp/google/auth/composer.json @@ -15,19 +15,19 @@ "require": { "php": "^7.4||^8.0", "firebase\/php-jwt": "^6.0", - "guzzlehttp\/guzzle": "^6.2.1|^7.0", + "guzzlehttp\/guzzle": "^6.5.8||^7.4.5", "guzzlehttp\/psr7": "^2.4.5", "psr\/http-message": "^1.1||^2.0", "psr\/cache": "^1.0||^2.0||^3.0" }, "require-dev": { - "guzzlehttp\/promises": "^1.3", + "guzzlehttp\/promises": "^2.0", "squizlabs\/php_codesniffer": "^3.5", "phpunit\/phpunit": "^9.0.0", "phpspec\/prophecy-phpunit": "^2.0", "sebastian\/comparator": ">=1.2.3", "phpseclib\/phpseclib": "^3.0", - "kelvinmo\/simplejwt": "0.7.0" + "kelvinmo\/simplejwt": "0.7.1" }, "suggest": { "phpseclib\/phpseclib": "May be used in place of OpenSSL for signing strings or for token management. Please require version ^2." diff --git a/vendor/Gcp/google/auth/src/AccessToken.php b/vendor/Gcp/google/auth/src/AccessToken.php index 9c47c77d..4e1dd1e3 100644 --- a/vendor/Gcp/google/auth/src/AccessToken.php +++ b/vendor/Gcp/google/auth/src/AccessToken.php @@ -18,7 +18,6 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth; use DateTime; -use Exception; use DeliciousBrains\WP_Offload_Media\Gcp\Firebase\JWT\ExpiredException; use DeliciousBrains\WP_Offload_Media\Gcp\Firebase\JWT\JWT; use DeliciousBrains\WP_Offload_Media\Gcp\Firebase\JWT\Key; @@ -29,16 +28,16 @@ use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\Request; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\Utils; use InvalidArgumentException; -use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib\Crypt\RSA; -use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib\Math\BigInteger as BigInteger2; use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Crypt\PublicKeyLoader; -use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Math\BigInteger as BigInteger3; +use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Crypt\RSA; +use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Math\BigInteger; use DeliciousBrains\WP_Offload_Media\Gcp\Psr\Cache\CacheItemPoolInterface; use RuntimeException; use DeliciousBrains\WP_Offload_Media\Gcp\SimpleJWT\InvalidTokenException; use DeliciousBrains\WP_Offload_Media\Gcp\SimpleJWT\JWT as SimpleJWT; use DeliciousBrains\WP_Offload_Media\Gcp\SimpleJWT\Keys\KeyFactory; use DeliciousBrains\WP_Offload_Media\Gcp\SimpleJWT\Keys\KeySet; +use TypeError; use UnexpectedValueException; /** * Wrapper around Google Access Tokens which provides convenience functions. @@ -268,10 +267,9 @@ private function getCerts($location, $cacheKey, array $options = []) { $cacheItem = $this->cache->getItem($cacheKey); $certs = $cacheItem ? $cacheItem->get() : null; - $gotNewCerts = \false; + $expireTime = null; if (!$certs) { - $certs = $this->retrieveCertsFromLocation($location, $options); - $gotNewCerts = \true; + list($certs, $expireTime) = $this->retrieveCertsFromLocation($location, $options); } if (!isset($certs['keys'])) { if ($location !== self::IAP_CERT_URL) { @@ -281,8 +279,8 @@ private function getCerts($location, $cacheKey, array $options = []) } // Push caching off until after verifying certs are in a valid format. // Don't want to cache bad data. - if ($gotNewCerts) { - $cacheItem->expiresAt(new DateTime('+1 hour')); + if ($expireTime) { + $cacheItem->expiresAt(new DateTime($expireTime)); $cacheItem->set($certs); $this->cache->save($cacheItem); } @@ -293,23 +291,32 @@ private function getCerts($location, $cacheKey, array $options = []) * * @param string $url location * @param array $options [optional] Configuration options. - * @return array certificates + * @return array{array, string} * @throws InvalidArgumentException If certs could not be retrieved from a local file. * @throws RuntimeException If certs could not be retrieved from a remote location. */ private function retrieveCertsFromLocation($url, array $options = []) { // If we're retrieving a local file, just grab it. + $expireTime = '+1 hour'; if (\strpos($url, 'http') !== 0) { if (!\file_exists($url)) { throw new InvalidArgumentException(\sprintf('Failed to retrieve verification certificates from path: %s.', $url)); } - return \json_decode((string) \file_get_contents($url), \true); + return [\json_decode((string) \file_get_contents($url), \true), $expireTime]; } $httpHandler = $this->httpHandler; $response = $httpHandler(new Request('GET', $url), $options); if ($response->getStatusCode() == 200) { - return \json_decode((string) $response->getBody(), \true); + if ($cacheControl = $response->getHeaderLine('Cache-Control')) { + \array_map(function ($value) use(&$expireTime) { + list($key, $value) = \explode('=', $value) + [null, null]; + if (\trim($key) == 'max-age') { + $expireTime = '+' . $value . ' seconds'; + } + }, \explode(',', $cacheControl)); + } + return [\json_decode((string) $response->getBody(), \true), $expireTime]; } throw new RuntimeException(\sprintf('Failed to retrieve verification certificates: "%s".', $response->getBody()->getContents()), $response->getStatusCode()); } @@ -318,53 +325,22 @@ private function retrieveCertsFromLocation($url, array $options = []) */ private function checkAndInitializePhpsec() { - if (!$this->checkAndInitializePhpsec2() && !$this->checkPhpsec3()) { - throw new RuntimeException('Please require phpseclib/phpseclib v2 or v3 to use this utility.'); + if (!\class_exists(RSA::class)) { + throw new RuntimeException('Please require phpseclib/phpseclib v3 to use this utility.'); } } - private function loadPhpsecPublicKey(string $modulus, string $exponent) : string - { - if (\class_exists(RSA::class) && \class_exists(BigInteger2::class)) { - $key = new RSA(); - $key->loadKey(['n' => new BigInteger2($this->callJwtStatic('urlsafeB64Decode', [$modulus]), 256), 'e' => new BigInteger2($this->callJwtStatic('urlsafeB64Decode', [$exponent]), 256)]); - return $key->getPublicKey(); - } - $key = PublicKeyLoader::load(['n' => new BigInteger3($this->callJwtStatic('urlsafeB64Decode', [$modulus]), 256), 'e' => new BigInteger3($this->callJwtStatic('urlsafeB64Decode', [$exponent]), 256)]); - return $key->toString('PKCS1'); - } /** - * @return bool + * @return string + * @throws TypeError If the key cannot be initialized to a string. */ - private function checkAndInitializePhpsec2() : bool + private function loadPhpsecPublicKey(string $modulus, string $exponent) : string { - if (!\class_exists('DeliciousBrains\\WP_Offload_Media\\Gcp\\phpseclib\\Crypt\\RSA')) { - return \false; + $key = PublicKeyLoader::load(['n' => new BigInteger($this->callJwtStatic('urlsafeB64Decode', [$modulus]), 256), 'e' => new BigInteger($this->callJwtStatic('urlsafeB64Decode', [$exponent]), 256)]); + $formattedPublicKey = $key->toString('PKCS8'); + if (!\is_string($formattedPublicKey)) { + throw new TypeError('Failed to initialize the key'); } - /** - * phpseclib calls "phpinfo" by default, which requires special - * whitelisting in the AppEngine VM environment. This function - * sets constants to bypass the need for phpseclib to check phpinfo - * - * @see phpseclib/Math/BigInteger - * @see https://github.com/GoogleCloudPlatform/getting-started-php/issues/85 - * @codeCoverageIgnore - */ - if (\filter_var(\getenv('GAE_VM'), \FILTER_VALIDATE_BOOLEAN)) { - if (!\defined('DeliciousBrains\\WP_Offload_Media\\Gcp\\MATH_BIGINTEGER_OPENSSL_ENABLED')) { - \define('DeliciousBrains\\WP_Offload_Media\\Gcp\\MATH_BIGINTEGER_OPENSSL_ENABLED', \true); - } - if (!\defined('DeliciousBrains\\WP_Offload_Media\\Gcp\\CRYPT_RSA_MODE')) { - \define('DeliciousBrains\\WP_Offload_Media\\Gcp\\CRYPT_RSA_MODE', RSA::MODE_OPENSSL); - } - } - return \true; - } - /** - * @return bool - */ - private function checkPhpsec3() : bool - { - return \class_exists('DeliciousBrains\\WP_Offload_Media\\Gcp\\phpseclib3\\Crypt\\RSA'); + return $formattedPublicKey; } /** * @return void diff --git a/vendor/Gcp/google/auth/src/ApplicationDefaultCredentials.php b/vendor/Gcp/google/auth/src/ApplicationDefaultCredentials.php index a5476b7c..a456a454 100644 --- a/vendor/Gcp/google/auth/src/ApplicationDefaultCredentials.php +++ b/vendor/Gcp/google/auth/src/ApplicationDefaultCredentials.php @@ -136,11 +136,13 @@ public static function getMiddleware($scope = null, callable $httpHandler = null * @param string|string[] $defaultScope The default scope to use if no * user-defined scopes exist, expressed either as an Array or as a * space-delimited string. + * @param string $universeDomain Specifies a universe domain to use for the + * calling client library * * @return FetchAuthTokenInterface * @throws DomainException if no implementation can be obtained. */ - public static function getCredentials($scope = null, callable $httpHandler = null, array $cacheConfig = null, CacheItemPoolInterface $cache = null, $quotaProject = null, $defaultScope = null) + public static function getCredentials($scope = null, callable $httpHandler = null, array $cacheConfig = null, CacheItemPoolInterface $cache = null, $quotaProject = null, $defaultScope = null, string $universeDomain = null) { $creds = null; $jsonKey = CredentialsLoader::fromEnv() ?: CredentialsLoader::fromWellKnownFile(); @@ -160,11 +162,14 @@ public static function getCredentials($scope = null, callable $httpHandler = nul if ($quotaProject) { $jsonKey['quota_project_id'] = $quotaProject; } + if ($universeDomain) { + $jsonKey['universe_domain'] = $universeDomain; + } $creds = CredentialsLoader::makeCredentials($scope, $jsonKey, $defaultScope); } elseif (AppIdentityCredentials::onAppEngine() && !GCECredentials::onAppEngineFlexible()) { $creds = new AppIdentityCredentials($anyScope); } elseif (self::onGce($httpHandler, $cacheConfig, $cache)) { - $creds = new GCECredentials(null, $anyScope, null, $quotaProject); + $creds = new GCECredentials(null, $anyScope, null, $quotaProject, null, $universeDomain); $creds->setIsOnGce(\true); // save the credentials a trip to the metadata server } diff --git a/vendor/Gcp/google/auth/src/CredentialSource/AwsNativeSource.php b/vendor/Gcp/google/auth/src/CredentialSource/AwsNativeSource.php new file mode 100644 index 00000000..7ce51115 --- /dev/null +++ b/vendor/Gcp/google/auth/src/CredentialSource/AwsNativeSource.php @@ -0,0 +1,270 @@ +audience = $audience; + $this->regionalCredVerificationUrl = $regionalCredVerificationUrl; + $this->regionUrl = $regionUrl; + $this->securityCredentialsUrl = $securityCredentialsUrl; + $this->imdsv2SessionTokenUrl = $imdsv2SessionTokenUrl; + } + public function fetchSubjectToken(callable $httpHandler = null) : string + { + if (\is_null($httpHandler)) { + $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + } + $headers = []; + if ($this->imdsv2SessionTokenUrl) { + $headers = ['X-aws-ec2-metadata-token' => self::getImdsV2SessionToken($this->imdsv2SessionTokenUrl, $httpHandler)]; + } + if (!($signingVars = self::getSigningVarsFromEnv())) { + if (!$this->securityCredentialsUrl) { + throw new \LogicException('Unable to get credentials from ENV, and no security credentials URL provided'); + } + $signingVars = self::getSigningVarsFromUrl($httpHandler, $this->securityCredentialsUrl, self::getRoleName($httpHandler, $this->securityCredentialsUrl, $headers), $headers); + } + if (!($region = self::getRegionFromEnv())) { + if (!$this->regionUrl) { + throw new \LogicException('Unable to get region from ENV, and no region URL provided'); + } + $region = self::getRegionFromUrl($httpHandler, $this->regionUrl, $headers); + } + $url = \str_replace('{region}', $region, $this->regionalCredVerificationUrl); + $host = \parse_url($url)['host'] ?? ''; + // From here we use the signing vars to create the signed request to receive a token + [$accessKeyId, $secretAccessKey, $securityToken] = $signingVars; + $headers = self::getSignedRequestHeaders($region, $host, $accessKeyId, $secretAccessKey, $securityToken); + // Inject x-goog-cloud-target-resource into header + $headers['x-goog-cloud-target-resource'] = $this->audience; + // Format headers as they're expected in the subject token + $formattedHeaders = \array_map(fn($k, $v) => ['key' => $k, 'value' => $v], \array_keys($headers), $headers); + $request = ['headers' => $formattedHeaders, 'method' => 'POST', 'url' => $url]; + return \urlencode(\json_encode($request) ?: ''); + } + /** + * @internal + */ + public static function getImdsV2SessionToken(string $imdsV2Url, callable $httpHandler) : string + { + $headers = ['X-aws-ec2-metadata-token-ttl-seconds' => '21600']; + $request = new Request('PUT', $imdsV2Url, $headers); + $response = $httpHandler($request); + return (string) $response->getBody(); + } + /** + * @see http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html + * + * @internal + * + * @return array + */ + public static function getSignedRequestHeaders(string $region, string $host, string $accessKeyId, string $secretAccessKey, ?string $securityToken) : array + { + $service = 'sts'; + # Create a date for headers and the credential string in ISO-8601 format + $amzdate = \gmdate('Ymd\\THis\\Z'); + $datestamp = \gmdate('Ymd'); + # Date w/o time, used in credential scope + # Create the canonical headers and signed headers. Header names + # must be trimmed and lowercase, and sorted in code point order from + # low to high. Note that there is a trailing \n. + $canonicalHeaders = \sprintf("host:%s\nx-amz-date:%s\n", $host, $amzdate); + if ($securityToken) { + $canonicalHeaders .= \sprintf("x-amz-security-token:%s\n", $securityToken); + } + # Step 5: Create the list of signed headers. This lists the headers + # in the canonicalHeaders list, delimited with ";" and in alpha order. + # Note: The request can include any headers; $canonicalHeaders and + # $signedHeaders lists those that you want to be included in the + # hash of the request. "Host" and "x-amz-date" are always required. + $signedHeaders = 'host;x-amz-date'; + if ($securityToken) { + $signedHeaders .= ';x-amz-security-token'; + } + # Step 6: Create payload hash (hash of the request body content). For GET + # requests, the payload is an empty string (""). + $payloadHash = \hash('sha256', ''); + # Step 7: Combine elements to create canonical request + $canonicalRequest = \implode("\n", [ + 'POST', + // method + '/', + // canonical URL + self::CRED_VERIFICATION_QUERY, + // query string + $canonicalHeaders, + $signedHeaders, + $payloadHash, + ]); + # ************* TASK 2: CREATE THE STRING TO SIGN************* + # Match the algorithm to the hashing algorithm you use, either SHA-1 or + # SHA-256 (recommended) + $algorithm = 'AWS4-HMAC-SHA256'; + $scope = \implode('/', [$datestamp, $region, $service, 'aws4_request']); + $stringToSign = \implode("\n", [$algorithm, $amzdate, $scope, \hash('sha256', $canonicalRequest)]); + # ************* TASK 3: CALCULATE THE SIGNATURE ************* + # Create the signing key using the function defined above. + // (done above) + $signingKey = self::getSignatureKey($secretAccessKey, $datestamp, $region, $service); + # Sign the string_to_sign using the signing_key + $signature = \bin2hex(self::hmacSign($signingKey, $stringToSign)); + # ************* TASK 4: ADD SIGNING INFORMATION TO THE REQUEST ************* + # The signing information can be either in a query string value or in + # a header named Authorization. This code shows how to use a header. + # Create authorization header and add to request headers + $authorizationHeader = \sprintf('%s Credential=%s/%s, SignedHeaders=%s, Signature=%s', $algorithm, $accessKeyId, $scope, $signedHeaders, $signature); + # The request can include any headers, but MUST include "host", "x-amz-date", + # and (for this scenario) "Authorization". "host" and "x-amz-date" must + # be included in the canonical_headers and signed_headers, as noted + # earlier. Order here is not significant. + $headers = ['host' => $host, 'x-amz-date' => $amzdate, 'Authorization' => $authorizationHeader]; + if ($securityToken) { + $headers['x-amz-security-token'] = $securityToken; + } + return $headers; + } + /** + * @internal + */ + public static function getRegionFromEnv() : ?string + { + $region = \getenv('AWS_REGION'); + if (empty($region)) { + $region = \getenv('AWS_DEFAULT_REGION'); + } + return $region ?: null; + } + /** + * @internal + * + * @param callable $httpHandler + * @param string $regionUrl + * @param array $headers Request headers to send in with the request. + */ + public static function getRegionFromUrl(callable $httpHandler, string $regionUrl, array $headers) : string + { + // get the region/zone from the region URL + $regionRequest = new Request('GET', $regionUrl, $headers); + $regionResponse = $httpHandler($regionRequest); + // Remove last character. For example, if us-east-2b is returned, + // the region would be us-east-2. + return \substr((string) $regionResponse->getBody(), 0, -1); + } + /** + * @internal + * + * @param callable $httpHandler + * @param string $securityCredentialsUrl + * @param array $headers Request headers to send in with the request. + */ + public static function getRoleName(callable $httpHandler, string $securityCredentialsUrl, array $headers) : string + { + // Get the AWS role name + $roleRequest = new Request('GET', $securityCredentialsUrl, $headers); + $roleResponse = $httpHandler($roleRequest); + $roleName = (string) $roleResponse->getBody(); + return $roleName; + } + /** + * @internal + * + * @param callable $httpHandler + * @param string $securityCredentialsUrl + * @param array $headers Request headers to send in with the request. + * @return array{string, string, ?string} + */ + public static function getSigningVarsFromUrl(callable $httpHandler, string $securityCredentialsUrl, string $roleName, array $headers) : array + { + // Get the AWS credentials + $credsRequest = new Request('GET', $securityCredentialsUrl . '/' . $roleName, $headers); + $credsResponse = $httpHandler($credsRequest); + $awsCreds = \json_decode((string) $credsResponse->getBody(), \true); + return [ + $awsCreds['AccessKeyId'], + // accessKeyId + $awsCreds['SecretAccessKey'], + // secretAccessKey + $awsCreds['Token'], + ]; + } + /** + * @internal + * + * @return array{string, string, ?string} + */ + public static function getSigningVarsFromEnv() : ?array + { + $accessKeyId = \getenv('AWS_ACCESS_KEY_ID'); + $secretAccessKey = \getenv('AWS_SECRET_ACCESS_KEY'); + if ($accessKeyId && $secretAccessKey) { + return [$accessKeyId, $secretAccessKey, \getenv('AWS_SESSION_TOKEN') ?: null]; + } + return null; + } + /** + * Return HMAC hash in binary string + */ + private static function hmacSign(string $key, string $msg) : string + { + return \hash_hmac('sha256', self::utf8Encode($msg), $key, \true); + } + /** + * @TODO add a fallback when mbstring is not available + */ + private static function utf8Encode(string $string) : string + { + return \mb_convert_encoding($string, 'UTF-8', 'ISO-8859-1'); + } + private static function getSignatureKey(string $key, string $dateStamp, string $regionName, string $serviceName) : string + { + $kDate = self::hmacSign(self::utf8Encode('AWS4' . $key), $dateStamp); + $kRegion = self::hmacSign($kDate, $regionName); + $kService = self::hmacSign($kRegion, $serviceName); + $kSigning = self::hmacSign($kService, 'aws4_request'); + return $kSigning; + } +} diff --git a/vendor/Gcp/google/auth/src/CredentialSource/FileSource.php b/vendor/Gcp/google/auth/src/CredentialSource/FileSource.php new file mode 100644 index 00000000..e0934555 --- /dev/null +++ b/vendor/Gcp/google/auth/src/CredentialSource/FileSource.php @@ -0,0 +1,60 @@ +file = $file; + if ($format === 'json' && \is_null($subjectTokenFieldName)) { + throw new InvalidArgumentException('subject_token_field_name must be set when format is JSON'); + } + $this->format = $format; + $this->subjectTokenFieldName = $subjectTokenFieldName; + } + public function fetchSubjectToken(callable $httpHandler = null) : string + { + $contents = \file_get_contents($this->file); + if ($this->format === 'json') { + if (!($json = \json_decode((string) $contents, \true))) { + throw new UnexpectedValueException('Unable to decode JSON file'); + } + if (!isset($json[$this->subjectTokenFieldName])) { + throw new UnexpectedValueException('subject_token_field_name not found in JSON file'); + } + $contents = $json[$this->subjectTokenFieldName]; + } + return $contents; + } +} diff --git a/vendor/Gcp/google/auth/src/CredentialSource/UrlSource.php b/vendor/Gcp/google/auth/src/CredentialSource/UrlSource.php new file mode 100644 index 00000000..c89f58dd --- /dev/null +++ b/vendor/Gcp/google/auth/src/CredentialSource/UrlSource.php @@ -0,0 +1,74 @@ + + */ + private ?array $headers; + /** + * @param string $url The URL to fetch the subject token from. + * @param string $format The format of the token in the response. Can be null or "json". + * @param string $subjectTokenFieldName The name of the field containing the token in the response. This is required + * when format is "json". + * @param array $headers Request headers to send in with the request to the URL. + */ + public function __construct(string $url, string $format = null, string $subjectTokenFieldName = null, array $headers = null) + { + $this->url = $url; + if ($format === 'json' && \is_null($subjectTokenFieldName)) { + throw new InvalidArgumentException('subject_token_field_name must be set when format is JSON'); + } + $this->format = $format; + $this->subjectTokenFieldName = $subjectTokenFieldName; + $this->headers = $headers; + } + public function fetchSubjectToken(callable $httpHandler = null) : string + { + if (\is_null($httpHandler)) { + $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + } + $request = new Request('GET', $this->url, $this->headers ?: []); + $response = $httpHandler($request); + $body = (string) $response->getBody(); + if ($this->format === 'json') { + if (!($json = \json_decode((string) $body, \true))) { + throw new UnexpectedValueException('Unable to decode JSON response'); + } + if (!isset($json[$this->subjectTokenFieldName])) { + throw new UnexpectedValueException('subject_token_field_name not found in JSON file'); + } + $body = $json[$this->subjectTokenFieldName]; + } + return $body; + } +} diff --git a/vendor/Gcp/google/auth/src/Credentials/ExternalAccountCredentials.php b/vendor/Gcp/google/auth/src/Credentials/ExternalAccountCredentials.php new file mode 100644 index 00000000..671ed1f9 --- /dev/null +++ b/vendor/Gcp/google/auth/src/Credentials/ExternalAccountCredentials.php @@ -0,0 +1,229 @@ + $jsonKey JSON credentials as an associative array. + */ + public function __construct($scope, array $jsonKey) + { + if (!\array_key_exists('type', $jsonKey)) { + throw new InvalidArgumentException('json key is missing the type field'); + } + if ($jsonKey['type'] !== self::EXTERNAL_ACCOUNT_TYPE) { + throw new InvalidArgumentException(\sprintf('expected "%s" type but received "%s"', self::EXTERNAL_ACCOUNT_TYPE, $jsonKey['type'])); + } + if (!\array_key_exists('token_url', $jsonKey)) { + throw new InvalidArgumentException('json key is missing the token_url field'); + } + if (!\array_key_exists('audience', $jsonKey)) { + throw new InvalidArgumentException('json key is missing the audience field'); + } + if (!\array_key_exists('subject_token_type', $jsonKey)) { + throw new InvalidArgumentException('json key is missing the subject_token_type field'); + } + if (!\array_key_exists('credential_source', $jsonKey)) { + throw new InvalidArgumentException('json key is missing the credential_source field'); + } + if (\array_key_exists('service_account_impersonation_url', $jsonKey)) { + $this->serviceAccountImpersonationUrl = $jsonKey['service_account_impersonation_url']; + } + $this->quotaProject = $jsonKey['quota_project_id'] ?? null; + $this->workforcePoolUserProject = $jsonKey['workforce_pool_user_project'] ?? null; + $this->universeDomain = $jsonKey['universe_domain'] ?? GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN; + $this->auth = new OAuth2(['tokenCredentialUri' => $jsonKey['token_url'], 'audience' => $jsonKey['audience'], 'scope' => $scope, 'subjectTokenType' => $jsonKey['subject_token_type'], 'subjectTokenFetcher' => self::buildCredentialSource($jsonKey), 'additionalOptions' => $this->workforcePoolUserProject ? ['userProject' => $this->workforcePoolUserProject] : []]); + if (!$this->isWorkforcePool() && $this->workforcePoolUserProject) { + throw new InvalidArgumentException('workforce_pool_user_project should not be set for non-workforce pool credentials.'); + } + } + /** + * @param array $jsonKey + */ + private static function buildCredentialSource(array $jsonKey) : ExternalAccountCredentialSourceInterface + { + $credentialSource = $jsonKey['credential_source']; + if (isset($credentialSource['file'])) { + return new FileSource($credentialSource['file'], $credentialSource['format']['type'] ?? null, $credentialSource['format']['subject_token_field_name'] ?? null); + } + if (isset($credentialSource['environment_id']) && 1 === \preg_match('/^aws(\\d+)$/', $credentialSource['environment_id'], $matches)) { + if ($matches[1] !== '1') { + throw new InvalidArgumentException("aws version \"{$matches[1]}\" is not supported in the current build."); + } + if (!\array_key_exists('regional_cred_verification_url', $credentialSource)) { + throw new InvalidArgumentException('The regional_cred_verification_url field is required for aws1 credential source.'); + } + if (!\array_key_exists('audience', $jsonKey)) { + throw new InvalidArgumentException('aws1 credential source requires an audience to be set in the JSON file.'); + } + return new AwsNativeSource( + $jsonKey['audience'], + $credentialSource['regional_cred_verification_url'], + // $regionalCredVerificationUrl + $credentialSource['region_url'] ?? null, + // $regionUrl + $credentialSource['url'] ?? null, + // $securityCredentialsUrl + $credentialSource['imdsv2_session_token_url'] ?? null + ); + } + if (isset($credentialSource['url'])) { + return new UrlSource($credentialSource['url'], $credentialSource['format']['type'] ?? null, $credentialSource['format']['subject_token_field_name'] ?? null, $credentialSource['headers'] ?? null); + } + throw new InvalidArgumentException('Unable to determine credential source from json key.'); + } + /** + * @param string $stsToken + * @param callable $httpHandler + * + * @return array { + * A set of auth related metadata, containing the following + * + * @type string $access_token + * @type int $expires_at + * } + */ + private function getImpersonatedAccessToken(string $stsToken, callable $httpHandler = null) : array + { + if (!isset($this->serviceAccountImpersonationUrl)) { + throw new InvalidArgumentException('service_account_impersonation_url must be set in JSON credentials.'); + } + $request = new Request('POST', $this->serviceAccountImpersonationUrl, ['Content-Type' => 'application/json', 'Authorization' => 'Bearer ' . $stsToken], (string) \json_encode(['lifetime' => \sprintf('%ss', OAuth2::DEFAULT_EXPIRY_SECONDS), 'scope' => \explode(' ', $this->auth->getScope())])); + if (\is_null($httpHandler)) { + $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + } + $response = $httpHandler($request); + $body = \json_decode((string) $response->getBody(), \true); + return ['access_token' => $body['accessToken'], 'expires_at' => \strtotime($body['expireTime'])]; + } + /** + * @param callable $httpHandler + * + * @return array { + * A set of auth related metadata, containing the following + * + * @type string $access_token + * @type int $expires_at (impersonated service accounts only) + * @type int $expires_in (identity pool only) + * @type string $issued_token_type (identity pool only) + * @type string $token_type (identity pool only) + * } + */ + public function fetchAuthToken(callable $httpHandler = null) + { + $stsToken = $this->auth->fetchAuthToken($httpHandler); + if (isset($this->serviceAccountImpersonationUrl)) { + return $this->getImpersonatedAccessToken($stsToken['access_token'], $httpHandler); + } + return $stsToken; + } + public function getCacheKey() + { + return $this->auth->getCacheKey(); + } + public function getLastReceivedToken() + { + return $this->auth->getLastReceivedToken(); + } + /** + * Get the quota project used for this API request + * + * @return string|null + */ + public function getQuotaProject() + { + return $this->quotaProject; + } + /** + * Get the universe domain used for this API request + * + * @return string + */ + public function getUniverseDomain() : string + { + return $this->universeDomain; + } + /** + * Get the project ID. + * + * @param callable $httpHandler Callback which delivers psr7 request + * @param string $accessToken The access token to use to sign the blob. If + * provided, saves a call to the metadata server for a new access + * token. **Defaults to** `null`. + * @return string|null + */ + public function getProjectId(callable $httpHandler = null, string $accessToken = null) + { + if (isset($this->projectId)) { + return $this->projectId; + } + $projectNumber = $this->getProjectNumber() ?: $this->workforcePoolUserProject; + if (!$projectNumber) { + return null; + } + if (\is_null($httpHandler)) { + $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + } + $url = \str_replace('UNIVERSE_DOMAIN', $this->getUniverseDomain(), \sprintf(self::CLOUD_RESOURCE_MANAGER_URL, $projectNumber)); + if (\is_null($accessToken)) { + $accessToken = $this->fetchAuthToken($httpHandler)['access_token']; + } + $request = new Request('GET', $url, ['authorization' => 'Bearer ' . $accessToken]); + $response = $httpHandler($request); + $body = \json_decode((string) $response->getBody(), \true); + return $this->projectId = $body['projectId']; + } + private function getProjectNumber() : ?string + { + $parts = \explode('/', $this->auth->getAudience()); + $i = \array_search('projects', $parts); + return $parts[$i + 1] ?? null; + } + private function isWorkforcePool() : bool + { + $regex = '#//iam\\.googleapis\\.com/locations/[^/]+/workforcePools/#'; + return \preg_match($regex, $this->auth->getAudience()) === 1; + } +} diff --git a/vendor/Gcp/google/auth/src/Credentials/GCECredentials.php b/vendor/Gcp/google/auth/src/Credentials/GCECredentials.php index 7cd64561..e4d11f85 100644 --- a/vendor/Gcp/google/auth/src/Credentials/GCECredentials.php +++ b/vendor/Gcp/google/auth/src/Credentials/GCECredentials.php @@ -84,10 +84,18 @@ class GCECredentials extends CredentialsLoader implements SignBlobInterface, Pro * The metadata path of the project ID. */ const PROJECT_ID_URI_PATH = 'v1/project/project-id'; + /** + * The metadata path of the project ID. + */ + const UNIVERSE_DOMAIN_URI_PATH = 'v1/universe/universe_domain'; /** * The header whose presence indicates GCE presence. */ const FLAVOR_HEADER = 'Metadata-Flavor'; + /** + * The Linux file which contains the product name. + */ + private const GKE_PRODUCT_NAME_FILE = '/sys/class/dmi/id/product_name'; /** * Note: the explicit `timeout` and `tries` below is a workaround. The underlying * issue is that resolving an unknown host on some networks will take @@ -142,6 +150,10 @@ class GCECredentials extends CredentialsLoader implements SignBlobInterface, Pro * @var string|null */ private $serviceAccountIdentity; + /** + * @var string + */ + private ?string $universeDomain; /** * @param Iam $iam [optional] An IAM instance. * @param string|string[] $scope [optional] the scope of the access request, @@ -151,8 +163,10 @@ class GCECredentials extends CredentialsLoader implements SignBlobInterface, Pro * charges associated with the request. * @param string $serviceAccountIdentity [optional] Specify a service * account identity name to use instead of "default". + * @param string $universeDomain [optional] Specify a universe domain to use + * instead of fetching one from the metadata server. */ - public function __construct(Iam $iam = null, $scope = null, $targetAudience = null, $quotaProject = null, $serviceAccountIdentity = null) + public function __construct(Iam $iam = null, $scope = null, $targetAudience = null, $quotaProject = null, $serviceAccountIdentity = null, string $universeDomain = null) { $this->iam = $iam; if ($scope && $targetAudience) { @@ -173,6 +187,7 @@ public function __construct(Iam $iam = null, $scope = null, $targetAudience = nu $this->tokenUri = $tokenUri; $this->quotaProject = $quotaProject; $this->serviceAccountIdentity = $serviceAccountIdentity; + $this->universeDomain = $universeDomain; } /** * The full uri for accessing the default token. @@ -232,6 +247,16 @@ private static function getProjectIdUri() $base = 'http://' . self::METADATA_IP . '/computeMetadata/'; return $base . self::PROJECT_ID_URI_PATH; } + /** + * The full uri for accessing the default universe domain. + * + * @return string + */ + private static function getUniverseDomainUri() + { + $base = 'http://' . self::METADATA_IP . '/computeMetadata/'; + return $base . self::UNIVERSE_DOMAIN_URI_PATH; + } /** * Determines if this an App Engine Flexible instance, by accessing the * GAE_INSTANCE environment variable. @@ -272,6 +297,19 @@ public static function onGce(callable $httpHandler = null) } catch (ConnectException $e) { } } + if (\PHP_OS === 'Windows') { + // @TODO: implement GCE residency detection on Windows + return \false; + } + // Detect GCE residency on Linux + return self::detectResidencyLinux(self::GKE_PRODUCT_NAME_FILE); + } + private static function detectResidencyLinux(string $productNameFile) : bool + { + if (\file_exists($productNameFile)) { + $productName = \trim((string) \file_get_contents($productNameFile)); + return 0 === \strpos($productName, 'Google'); + } return \false; } /** @@ -305,7 +343,7 @@ public function fetchAuthToken(callable $httpHandler = null) } $response = $this->getFromMetadata($httpHandler, $this->tokenUri); if ($this->targetAudience) { - return ['id_token' => $response]; + return $this->lastReceivedToken = ['id_token' => $response]; } if (null === ($json = \json_decode($response, \true))) { throw new \Exception('Invalid JSON response'); @@ -323,11 +361,14 @@ public function getCacheKey() return self::cacheKey; } /** - * @return array{access_token:string,expires_at:int}|null + * @return array|null */ public function getLastReceivedToken() { if ($this->lastReceivedToken) { + if (\array_key_exists('id_token', $this->lastReceivedToken)) { + return $this->lastReceivedToken; + } return ['access_token' => $this->lastReceivedToken['access_token'], 'expires_at' => $this->lastReceivedToken['expires_at']]; } return null; @@ -380,6 +421,40 @@ public function getProjectId(callable $httpHandler = null) $this->projectId = $this->getFromMetadata($httpHandler, self::getProjectIdUri()); return $this->projectId; } + /** + * Fetch the default universe domain from the metadata server. + * + * @param callable $httpHandler Callback which delivers psr7 request + * @return string + */ + public function getUniverseDomain(callable $httpHandler = null) : string + { + if (null !== $this->universeDomain) { + return $this->universeDomain; + } + $httpHandler = $httpHandler ?: HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + if (!$this->hasCheckedOnGce) { + $this->isOnGce = self::onGce($httpHandler); + $this->hasCheckedOnGce = \true; + } + try { + $this->universeDomain = $this->getFromMetadata($httpHandler, self::getUniverseDomainUri()); + } catch (ClientException $e) { + // If the metadata server exists, but returns a 404 for the universe domain, the auth + // libraries should safely assume this is an older metadata server running in GCU, and + // should return the default universe domain. + if (!$e->hasResponse() || 404 != $e->getResponse()->getStatusCode()) { + throw $e; + } + $this->universeDomain = self::DEFAULT_UNIVERSE_DOMAIN; + } + // We expect in some cases the metadata server will return an empty string for the universe + // domain. In this case, the auth library MUST return the default universe domain. + if ('' === $this->universeDomain) { + $this->universeDomain = self::DEFAULT_UNIVERSE_DOMAIN; + } + return $this->universeDomain; + } /** * Fetch the value of a GCE metadata server URI. * diff --git a/vendor/Gcp/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php b/vendor/Gcp/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php index 58c6f2c0..d9789ad4 100644 --- a/vendor/Gcp/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php +++ b/vendor/Gcp/google/auth/src/Credentials/ImpersonatedServiceAccountCredentials.php @@ -32,13 +32,13 @@ class ImpersonatedServiceAccountCredentials extends CredentialsLoader implements */ protected $sourceCredentials; /** - * Instantiate an instance of ImpersonatedServiceAccountCredentials from a credentials file that has be created with - * the --impersonated-service-account flag. + * Instantiate an instance of ImpersonatedServiceAccountCredentials from a credentials file that + * has be created with the --impersonated-service-account flag. * - * @param string|string[] $scope the scope of the access request, expressed - * either as an Array or as a space-delimited String. + * @param string|string[] $scope The scope of the access request, expressed either as an + * array or as a space-delimited string. * @param string|array $jsonKey JSON credential file path or JSON credentials - * as an associative array + * as an associative array. */ public function __construct($scope, $jsonKey) { @@ -61,11 +61,13 @@ public function __construct($scope, $jsonKey) $this->sourceCredentials = new UserRefreshCredentials($scope, $jsonKey['source_credentials']); } /** - * Helper function for extracting the Server Account Name from the URL saved in the account credentials file - * @param $serviceAccountImpersonationUrl string URL from the 'service_account_impersonation_url' field + * Helper function for extracting the Server Account Name from the URL saved in the account + * credentials file. + * + * @param $serviceAccountImpersonationUrl string URL from "service_account_impersonation_url" * @return string Service account email or ID. */ - private function getImpersonatedServiceAccountNameFromUrl(string $serviceAccountImpersonationUrl) + private function getImpersonatedServiceAccountNameFromUrl(string $serviceAccountImpersonationUrl) : string { $fields = \explode('/', $serviceAccountImpersonationUrl); $lastField = \end($fields); diff --git a/vendor/Gcp/google/auth/src/Credentials/ServiceAccountCredentials.php b/vendor/Gcp/google/auth/src/Credentials/ServiceAccountCredentials.php index d0c06bd1..c410c38b 100644 --- a/vendor/Gcp/google/auth/src/Credentials/ServiceAccountCredentials.php +++ b/vendor/Gcp/google/auth/src/Credentials/ServiceAccountCredentials.php @@ -88,6 +88,10 @@ class ServiceAccountCredentials extends CredentialsLoader implements GetQuotaPro * @var ServiceAccountJwtAccessCredentials|null */ private $jwtAccessCredentials; + /** + * @var string + */ + private string $universeDomain; /** * Create a new ServiceAccountCredentials. * @@ -128,6 +132,7 @@ public function __construct($scope, $jsonKey, $sub = null, $targetAudience = nul } $this->auth = new OAuth2(['audience' => self::TOKEN_CREDENTIAL_URI, 'issuer' => $jsonKey['client_email'], 'scope' => $scope, 'signingAlgorithm' => 'RS256', 'signingKey' => $jsonKey['private_key'], 'sub' => $sub, 'tokenCredentialUri' => self::TOKEN_CREDENTIAL_URI, 'additionalClaims' => $additionalClaims]); $this->projectId = $jsonKey['project_id'] ?? null; + $this->universeDomain = $jsonKey['universe_domain'] ?? self::DEFAULT_UNIVERSE_DOMAIN; } /** * When called, the ServiceAccountCredentials will use an instance of @@ -267,11 +272,29 @@ public function getQuotaProject() { return $this->quotaProject; } + /** + * Get the universe domain configured in the JSON credential. + * + * @return string + */ + public function getUniverseDomain() : string + { + return $this->universeDomain; + } /** * @return bool */ private function useSelfSignedJwt() { + // When a sub is supplied, the user is using domain-wide delegation, which not available + // with self-signed JWTs + if (null !== $this->auth->getSub()) { + // If we are outside the GDU, we can't use domain-wide delegation + if ($this->getUniverseDomain() !== self::DEFAULT_UNIVERSE_DOMAIN) { + throw new \LogicException(\sprintf('Service Account subject is configured for the credential. Domain-wide ' . 'delegation is not supported in universes other than %s.', self::DEFAULT_UNIVERSE_DOMAIN)); + } + return \false; + } // If claims are set, this call is for "id_tokens" if ($this->auth->getAdditionalClaims()) { return \false; @@ -280,6 +303,10 @@ private function useSelfSignedJwt() if ($this->useJwtAccessWithScope) { return \true; } + // If the universe domain is outside the GDU, use JwtAccess for access tokens + if ($this->getUniverseDomain() !== self::DEFAULT_UNIVERSE_DOMAIN) { + return \true; + } return \is_null($this->auth->getScope()); } } diff --git a/vendor/Gcp/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php b/vendor/Gcp/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php index 1ac3c65b..a8d3bf08 100644 --- a/vendor/Gcp/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php +++ b/vendor/Gcp/google/auth/src/Credentials/ServiceAccountJwtAccessCredentials.php @@ -119,7 +119,7 @@ public function fetchAuthToken(callable $httpHandler = null) $access_token = $this->auth->toJwt(); // Set the self-signed access token in OAuth2 for getLastReceivedToken $this->auth->setAccessToken($access_token); - return ['access_token' => $access_token]; + return ['access_token' => $access_token, 'expires_in' => $this->auth->getExpiry(), 'token_type' => 'Bearer']; } /** * @return string diff --git a/vendor/Gcp/google/auth/src/CredentialsLoader.php b/vendor/Gcp/google/auth/src/CredentialsLoader.php index 735b6e8b..523e1b35 100644 --- a/vendor/Gcp/google/auth/src/CredentialsLoader.php +++ b/vendor/Gcp/google/auth/src/CredentialsLoader.php @@ -17,6 +17,7 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\Credentials\ExternalAccountCredentials; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\Credentials\ImpersonatedServiceAccountCredentials; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\Credentials\InsecureCredentials; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\Credentials\ServiceAccountCredentials; @@ -27,8 +28,9 @@ * CredentialsLoader contains the behaviour used to locate and find default * credentials files on the file system. */ -abstract class CredentialsLoader implements FetchAuthTokenInterface, UpdateMetadataInterface +abstract class CredentialsLoader implements GetUniverseDomainInterface, FetchAuthTokenInterface, UpdateMetadataInterface { + use UpdateMetadataTrait; const TOKEN_CREDENTIAL_URI = 'https://oauth2.googleapis.com/token'; const ENV_VAR = 'GOOGLE_APPLICATION_CREDENTIALS'; const QUOTA_PROJECT_ENV_VAR = 'GOOGLE_CLOUD_QUOTA_PROJECT'; @@ -113,7 +115,7 @@ public static function fromWellKnownFile() * user-defined scopes exist, expressed either as an Array or as a * space-delimited string. * - * @return ServiceAccountCredentials|UserRefreshCredentials|ImpersonatedServiceAccountCredentials + * @return ServiceAccountCredentials|UserRefreshCredentials|ImpersonatedServiceAccountCredentials|ExternalAccountCredentials */ public static function makeCredentials($scope, array $jsonKey, $defaultScope = null) { @@ -132,6 +134,10 @@ public static function makeCredentials($scope, array $jsonKey, $defaultScope = n $anyScope = $scope ?: $defaultScope; return new ImpersonatedServiceAccountCredentials($anyScope, $jsonKey); } + if ($jsonKey['type'] == 'external_account') { + $anyScope = $scope ?: $defaultScope; + return new ExternalAccountCredentials($anyScope, $jsonKey); + } throw new \InvalidArgumentException('invalid value in the type field'); } /** @@ -159,39 +165,6 @@ public static function makeInsecureCredentials() { return new InsecureCredentials(); } - /** - * export a callback function which updates runtime metadata. - * - * @return callable updateMetadata function - * @deprecated - */ - public function getUpdateMetadataFunc() - { - return [$this, 'updateMetadata']; - } - /** - * Updates metadata with the authorization token. - * - * @param array $metadata metadata hashmap - * @param string $authUri optional auth uri - * @param callable $httpHandler callback which delivers psr7 request - * @return array updated metadata hashmap - */ - public function updateMetadata($metadata, $authUri = null, callable $httpHandler = null) - { - if (isset($metadata[self::AUTH_METADATA_KEY])) { - // Auth metadata has already been set - return $metadata; - } - $result = $this->fetchAuthToken($httpHandler); - $metadata_copy = $metadata; - if (isset($result['access_token'])) { - $metadata_copy[self::AUTH_METADATA_KEY] = ['Bearer ' . $result['access_token']]; - } elseif (isset($result['id_token'])) { - $metadata_copy[self::AUTH_METADATA_KEY] = ['Bearer ' . $result['id_token']]; - } - return $metadata_copy; - } /** * Fetch a quota project from the environment variable * GOOGLE_CLOUD_QUOTA_PROJECT. Return null if @@ -256,4 +229,14 @@ private static function loadDefaultClientCertSourceFile() } return $clientCertSourceJson; } + /** + * Get the universe domain from the credential. Defaults to "googleapis.com" + * for all credential types which do not support universe domain. + * + * @return string + */ + public function getUniverseDomain() : string + { + return self::DEFAULT_UNIVERSE_DOMAIN; + } } diff --git a/vendor/Gcp/google/auth/src/ExternalAccountCredentialSourceInterface.php b/vendor/Gcp/google/auth/src/ExternalAccountCredentialSourceInterface.php new file mode 100644 index 00000000..9008127e --- /dev/null +++ b/vendor/Gcp/google/auth/src/ExternalAccountCredentialSourceInterface.php @@ -0,0 +1,23 @@ +fetcher = $fetcher; $this->cache = $cache; - $this->cacheConfig = \array_merge(['lifetime' => 1500, 'prefix' => ''], (array) $cacheConfig); + $this->cacheConfig = \array_merge(['lifetime' => 1500, 'prefix' => '', 'cacheUniverseDomain' => $fetcher instanceof Credentials\GCECredentials], (array) $cacheConfig); } /** * @return FetchAuthTokenInterface @@ -113,9 +113,10 @@ public function signBlob($stringToSign, $forceOpenSsl = \false) if (!$this->fetcher instanceof SignBlobInterface) { throw new \RuntimeException('Credentials fetcher does not implement ' . 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\SignBlobInterface'); } - // Pass the access token from cache to GCECredentials for signing a blob. - // This saves a call to the metadata server when a cached token exists. - if ($this->fetcher instanceof Credentials\GCECredentials) { + // Pass the access token from cache for credentials that sign blobs + // using the IAM API. This saves a call to fetch an access token when a + // cached token exists. + if ($this->fetcher instanceof Credentials\GCECredentials || $this->fetcher instanceof Credentials\ImpersonatedServiceAccountCredentials) { $cached = $this->fetchAuthTokenFromCache(); $accessToken = $cached['access_token'] ?? null; return $this->fetcher->signBlob($stringToSign, $forceOpenSsl, $accessToken); @@ -148,8 +149,31 @@ public function getProjectId(callable $httpHandler = null) if (!$this->fetcher instanceof ProjectIdProviderInterface) { throw new \RuntimeException('Credentials fetcher does not implement ' . 'DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Auth\\ProvidesProjectIdInterface'); } + // Pass the access token from cache for credentials that require an + // access token to fetch the project ID. This saves a call to fetch an + // access token when a cached token exists. + if ($this->fetcher instanceof Credentials\ExternalAccountCredentials) { + $cached = $this->fetchAuthTokenFromCache(); + $accessToken = $cached['access_token'] ?? null; + return $this->fetcher->getProjectId($httpHandler, $accessToken); + } return $this->fetcher->getProjectId($httpHandler); } + /* + * Get the Universe Domain from the fetcher. + * + * @return string + */ + public function getUniverseDomain() : string + { + if ($this->fetcher instanceof GetUniverseDomainInterface) { + if ($this->cacheConfig['cacheUniverseDomain']) { + return $this->getCachedUniverseDomain($this->fetcher); + } + return $this->fetcher->getUniverseDomain(); + } + return GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN; + } /** * Updates metadata with the authorization token. * @@ -172,6 +196,8 @@ public function updateMetadata($metadata, $authUri = null, callable $httpHandler // fetch another token. if (isset($cached['access_token'])) { $metadata[self::AUTH_METADATA_KEY] = ['Bearer ' . $cached['access_token']]; + } elseif (isset($cached['id_token'])) { + $metadata[self::AUTH_METADATA_KEY] = ['Bearer ' . $cached['id_token']]; } } $newMetadata = $this->fetcher->updateMetadata($metadata, $authUri, $httpHandler); @@ -221,4 +247,15 @@ private function saveAuthTokenInCache($authToken, $authUri = null) $this->setCachedValue($cacheKey, $authToken); } } + private function getCachedUniverseDomain(GetUniverseDomainInterface $fetcher) : string + { + $cacheKey = $this->getFullCacheKey($fetcher->getCacheKey() . 'universe_domain'); + // @phpstan-ignore-line + if ($universeDomain = $this->getCachedValue($cacheKey)) { + return $universeDomain; + } + $universeDomain = $fetcher->getUniverseDomain(); + $this->setCachedValue($cacheKey, $universeDomain); + return $universeDomain; + } } diff --git a/vendor/Gcp/google/auth/src/GetUniverseDomainInterface.php b/vendor/Gcp/google/auth/src/GetUniverseDomainInterface.php new file mode 100644 index 00000000..419779a5 --- /dev/null +++ b/vendor/Gcp/google/auth/src/GetUniverseDomainInterface.php @@ -0,0 +1,34 @@ +httpHandler = $httpHandler ?: HttpHandlerFactory::build(HttpClientCache::getHttpClient()); + $this->universeDomain = $universeDomain; } /** * Sign a string using the IAM signBlob API. @@ -61,7 +67,8 @@ public function signBlob($email, $accessToken, $stringToSign, array $delegates = { $httpHandler = $this->httpHandler; $name = \sprintf(self::SERVICE_ACCOUNT_NAME, $email); - $uri = self::IAM_API_ROOT . '/' . \sprintf(self::SIGN_BLOB_PATH, $name); + $apiRoot = \str_replace('UNIVERSE_DOMAIN', $this->universeDomain, self::IAM_API_ROOT_TEMPLATE); + $uri = $apiRoot . '/' . \sprintf(self::SIGN_BLOB_PATH, $name); if ($delegates) { foreach ($delegates as &$delegate) { $delegate = \sprintf(self::SERVICE_ACCOUNT_NAME, $delegate); diff --git a/vendor/Gcp/google/auth/src/IamSignerTrait.php b/vendor/Gcp/google/auth/src/IamSignerTrait.php index 84c5fa64..9faf7598 100644 --- a/vendor/Gcp/google/auth/src/IamSignerTrait.php +++ b/vendor/Gcp/google/auth/src/IamSignerTrait.php @@ -47,7 +47,10 @@ public function signBlob($stringToSign, $forceOpenSsl = \false, $accessToken = n $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); // Providing a signer is useful for testing, but it's undocumented // because it's not something a user would generally need to do. - $signer = $this->iam ?: new Iam($httpHandler); + $signer = $this->iam; + if (!$signer) { + $signer = $this instanceof GetUniverseDomainInterface ? new Iam($httpHandler, $this->getUniverseDomain()) : new Iam($httpHandler); + } $email = $this->getClientName($httpHandler); if (\is_null($accessToken)) { $previousToken = $this->getLastReceivedToken(); diff --git a/vendor/Gcp/google/auth/src/Middleware/AuthTokenMiddleware.php b/vendor/Gcp/google/auth/src/Middleware/AuthTokenMiddleware.php index f1bc6e6b..332b3410 100644 --- a/vendor/Gcp/google/auth/src/Middleware/AuthTokenMiddleware.php +++ b/vendor/Gcp/google/auth/src/Middleware/AuthTokenMiddleware.php @@ -17,8 +17,11 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\Middleware; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\FetchAuthTokenCache; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\FetchAuthTokenInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\GetQuotaProjectInterface; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\UpdateMetadataInterface; +use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\Utils; use DeliciousBrains\WP_Offload_Media\Gcp\Psr\Http\Message\RequestInterface; /** * AuthTokenMiddleware is a Guzzle Middleware that adds an Authorization header @@ -38,6 +41,9 @@ class AuthTokenMiddleware */ private $httpHandler; /** + * It must be an implementation of FetchAuthTokenInterface. + * It may also implement UpdateMetadataInterface allowing direct + * retrieval of auth related headers * @var FetchAuthTokenInterface */ private $fetcher; @@ -90,7 +96,7 @@ public function __invoke(callable $handler) if (!isset($options['auth']) || $options['auth'] !== 'google_auth') { return $handler($request, $options); } - $request = $request->withHeader('authorization', 'Bearer ' . $this->fetchToken()); + $request = $this->addAuthHeaders($request); if ($quotaProject = $this->getQuotaProject()) { $request = $request->withHeader(GetQuotaProjectInterface::X_GOOG_USER_PROJECT_HEADER, $quotaProject); } @@ -98,24 +104,26 @@ public function __invoke(callable $handler) }; } /** - * Call fetcher to fetch the token. + * Adds auth related headers to the request. * - * @return string|null + * @param RequestInterface $request + * @return RequestInterface */ - private function fetchToken() + private function addAuthHeaders(RequestInterface $request) { - $auth_tokens = (array) $this->fetcher->fetchAuthToken($this->httpHandler); - if (\array_key_exists('access_token', $auth_tokens)) { - // notify the callback if applicable - if ($this->tokenCallback) { - \call_user_func($this->tokenCallback, $this->fetcher->getCacheKey(), $auth_tokens['access_token']); - } - return $auth_tokens['access_token']; + if (!$this->fetcher instanceof UpdateMetadataInterface || $this->fetcher instanceof FetchAuthTokenCache && !$this->fetcher->getFetcher() instanceof UpdateMetadataInterface) { + $token = $this->fetcher->fetchAuthToken(); + $request = $request->withHeader('authorization', 'Bearer ' . ($token['access_token'] ?? $token['id_token'] ?? '')); + } else { + $headers = $this->fetcher->updateMetadata($request->getHeaders(), null, $this->httpHandler); + $request = Utils::modifyRequest($request, ['set_headers' => $headers]); } - if (\array_key_exists('id_token', $auth_tokens)) { - return $auth_tokens['id_token']; + if ($this->tokenCallback && ($token = $this->fetcher->getLastReceivedToken())) { + if (\array_key_exists('access_token', $token)) { + \call_user_func($this->tokenCallback, $this->fetcher->getCacheKey(), $token['access_token']); + } } - return null; + return $request; } /** * @return string|null diff --git a/vendor/Gcp/google/auth/src/OAuth2.php b/vendor/Gcp/google/auth/src/OAuth2.php index ca61ba2b..6e8c3004 100644 --- a/vendor/Gcp/google/auth/src/OAuth2.php +++ b/vendor/Gcp/google/auth/src/OAuth2.php @@ -42,6 +42,8 @@ class OAuth2 implements FetchAuthTokenInterface const DEFAULT_SKEW_SECONDS = 60; // 1 minute const JWT_URN = 'urn:ietf:params:oauth:grant-type:jwt-bearer'; + const STS_URN = 'urn:ietf:params:oauth:grant-type:token-exchange'; + private const STS_REQUESTED_TOKEN_TYPE = 'urn:ietf:params:oauth:token-type:access_token'; /** * TODO: determine known methods from the keys of JWT::methods. * @@ -238,6 +240,48 @@ class OAuth2 implements FetchAuthTokenInterface * @var ?string */ private $codeVerifier; + /** + * For STS requests. + * A URI that indicates the target service or resource where the client + * intends to use the requested security token. + */ + private ?string $resource; + /** + * For STS requests. + * A fetcher for the "subject_token", which is a security token that + * represents the identity of the party on behalf of whom the request is + * being made. + */ + private ?ExternalAccountCredentialSourceInterface $subjectTokenFetcher; + /** + * For STS requests. + * An identifier, that indicates the type of the security token in the + * subjectToken parameter. + */ + private ?string $subjectTokenType; + /** + * For STS requests. + * A security token that represents the identity of the acting party. + */ + private ?string $actorToken; + /** + * For STS requests. + * An identifier that indicates the type of the security token in the + * actorToken parameter. + */ + private ?string $actorTokenType; + /** + * From STS response. + * An identifier for the representation of the issued security token. + */ + private ?string $issuedTokenType = null; + /** + * From STS response. + * An identifier for the representation of the issued security token. + * + * @var array + */ + private array $additionalOptions; /** * Create a new OAuthCredentials. * @@ -304,11 +348,33 @@ class OAuth2 implements FetchAuthTokenInterface * When using an extension grant type, this is the set of parameters used * by that extension. * + * - codeVerifier + * The code verifier for PKCE for OAuth 2.0. + * + * - resource + * The target service or resource where the client ntends to use the + * requested security token. + * + * - subjectTokenFetcher + * A fetcher for the "subject_token", which is a security token that + * represents the identity of the party on behalf of whom the request is + * being made. + * + * - subjectTokenType + * An identifier that indicates the type of the security token in the + * subjectToken parameter. + * + * - actorToken + * A security token that represents the identity of the acting party. + * + * - actorTokenType + * An identifier for the representation of the issued security token. + * * @param array $config Configuration array */ public function __construct(array $config) { - $opts = \array_merge(['expiry' => self::DEFAULT_EXPIRY_SECONDS, 'extensionParams' => [], 'authorizationUri' => null, 'redirectUri' => null, 'tokenCredentialUri' => null, 'state' => null, 'username' => null, 'password' => null, 'clientId' => null, 'clientSecret' => null, 'issuer' => null, 'sub' => null, 'audience' => null, 'signingKey' => null, 'signingKeyId' => null, 'signingAlgorithm' => null, 'scope' => null, 'additionalClaims' => [], 'codeVerifier' => null], $config); + $opts = \array_merge(['expiry' => self::DEFAULT_EXPIRY_SECONDS, 'extensionParams' => [], 'authorizationUri' => null, 'redirectUri' => null, 'tokenCredentialUri' => null, 'state' => null, 'username' => null, 'password' => null, 'clientId' => null, 'clientSecret' => null, 'issuer' => null, 'sub' => null, 'audience' => null, 'signingKey' => null, 'signingKeyId' => null, 'signingAlgorithm' => null, 'scope' => null, 'additionalClaims' => [], 'codeVerifier' => null, 'resource' => null, 'subjectTokenFetcher' => null, 'subjectTokenType' => null, 'actorToken' => null, 'actorTokenType' => null, 'additionalOptions' => []], $config); $this->setAuthorizationUri($opts['authorizationUri']); $this->setRedirectUri($opts['redirectUri']); $this->setTokenCredentialUri($opts['tokenCredentialUri']); @@ -328,6 +394,13 @@ public function __construct(array $config) $this->setExtensionParams($opts['extensionParams']); $this->setAdditionalClaims($opts['additionalClaims']); $this->setCodeVerifier($opts['codeVerifier']); + // for STS + $this->resource = $opts['resource']; + $this->subjectTokenFetcher = $opts['subjectTokenFetcher']; + $this->subjectTokenType = $opts['subjectTokenType']; + $this->actorToken = $opts['actorToken']; + $this->actorTokenType = $opts['actorTokenType']; + $this->additionalOptions = $opts['additionalOptions']; $this->updateToken($opts); } /** @@ -410,9 +483,10 @@ public function toJwt(array $config = []) /** * Generates a request for token credentials. * + * @param callable $httpHandler callback which delivers psr7 request * @return RequestInterface the authorization Url. */ - public function generateCredentialsRequest() + public function generateCredentialsRequest(callable $httpHandler = null) { $uri = $this->getTokenCredentialUri(); if (\is_null($uri)) { @@ -441,6 +515,15 @@ public function generateCredentialsRequest() case self::JWT_URN: $params['assertion'] = $this->toJwt(); break; + case self::STS_URN: + $token = $this->subjectTokenFetcher->fetchSubjectToken($httpHandler); + $params['subject_token'] = $token; + $params['subject_token_type'] = $this->subjectTokenType; + $params += \array_filter(['resource' => $this->resource, 'audience' => $this->audience, 'scope' => $this->getScope(), 'requested_token_type' => self::STS_REQUESTED_TOKEN_TYPE, 'actor_token' => $this->actorToken, 'actor_token_type' => $this->actorTokenType]); + if ($this->additionalOptions) { + $params['options'] = \json_encode($this->additionalOptions); + } + break; default: if (!\is_null($this->getRedirectUri())) { # Grant type was supposed to be 'authorization_code', as there @@ -467,7 +550,7 @@ public function fetchAuthToken(callable $httpHandler = null) if (\is_null($httpHandler)) { $httpHandler = HttpHandlerFactory::build(HttpClientCache::getHttpClient()); } - $response = $httpHandler($this->generateCredentialsRequest()); + $response = $httpHandler($this->generateCredentialsRequest($httpHandler)); $credentials = $this->parseTokenResponse($response); $this->updateToken($credentials); if (isset($credentials['scope'])) { @@ -567,6 +650,11 @@ public function updateToken(array $config) if (\array_key_exists('refresh_token', $opts)) { $this->setRefreshToken($opts['refresh_token']); } + // Required for STS response. An identifier for the representation of + // the issued security token. + if (\array_key_exists('issued_token_type', $opts)) { + $this->issuedTokenType = $opts['issued_token_type']; + } } /** * Builds the authorization Uri that the user should be redirected to. @@ -795,6 +883,9 @@ public function getGrantType() if (!\is_null($this->issuer) && !\is_null($this->signingKey)) { return self::JWT_URN; } + if (!\is_null($this->subjectTokenFetcher) && !\is_null($this->subjectTokenType)) { + return self::STS_URN; + } return null; } /** @@ -1270,6 +1361,15 @@ public function getAdditionalClaims() { return $this->additionalClaims; } + /** + * Gets the additional claims to be included in the JWT token. + * + * @return ?string + */ + public function getIssuedTokenType() + { + return $this->issuedTokenType; + } /** * The expiration of the last received token. * @@ -1368,7 +1468,7 @@ private function getFirebaseJwtKeys($publicKey, $allowedAlgs) } $allowedAlg = null; if (\is_string($allowedAlgs)) { - $allowedAlg = $allowedAlg; + $allowedAlg = $allowedAlgs; } elseif (\is_array($allowedAlgs)) { if (\count($allowedAlgs) > 1) { throw new \InvalidArgumentException('To have multiple allowed algorithms, You must provide an' . ' array of Firebase\\JWT\\Key objects.' . ' See https://github.com/firebase/php-jwt for more information.'); diff --git a/vendor/Gcp/google/auth/src/ServiceAccountSignerTrait.php b/vendor/Gcp/google/auth/src/ServiceAccountSignerTrait.php index 107ce947..a3cdefc3 100644 --- a/vendor/Gcp/google/auth/src/ServiceAccountSignerTrait.php +++ b/vendor/Gcp/google/auth/src/ServiceAccountSignerTrait.php @@ -17,7 +17,8 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth; -use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib\Crypt\RSA; +use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Crypt\PublicKeyLoader; +use DeliciousBrains\WP_Offload_Media\Gcp\phpseclib3\Crypt\RSA; /** * Sign a string using a Service Account private key. */ @@ -35,11 +36,9 @@ public function signBlob($stringToSign, $forceOpenssl = \false) { $privateKey = $this->auth->getSigningKey(); $signedString = ''; - if (\class_exists('DeliciousBrains\\WP_Offload_Media\\Gcp\\phpseclib\\Crypt\\RSA') && !$forceOpenssl) { - $rsa = new RSA(); - $rsa->loadKey($privateKey); - $rsa->setSignatureMode(RSA::SIGNATURE_PKCS1); - $rsa->setHash('sha256'); + if (\class_exists(phpseclib3\Crypt\RSA::class) && !$forceOpenssl) { + $key = PublicKeyLoader::load($privateKey); + $rsa = $key->withHash('sha256')->withPadding(RSA::SIGNATURE_PKCS1); $signedString = $rsa->sign($stringToSign); } elseif (\extension_loaded('openssl')) { \openssl_sign($stringToSign, $signedString, $privateKey, 'sha256WithRSAEncryption'); diff --git a/vendor/Gcp/google/auth/src/UpdateMetadataTrait.php b/vendor/Gcp/google/auth/src/UpdateMetadataTrait.php new file mode 100644 index 00000000..64ed8068 --- /dev/null +++ b/vendor/Gcp/google/auth/src/UpdateMetadataTrait.php @@ -0,0 +1,62 @@ + $metadata metadata hashmap + * @param string $authUri optional auth uri + * @param callable $httpHandler callback which delivers psr7 request + * @return array updated metadata hashmap + */ + public function updateMetadata($metadata, $authUri = null, callable $httpHandler = null) + { + if (isset($metadata[self::AUTH_METADATA_KEY])) { + // Auth metadata has already been set + return $metadata; + } + $result = $this->fetchAuthToken($httpHandler); + $metadata_copy = $metadata; + if (isset($result['access_token'])) { + $metadata_copy[self::AUTH_METADATA_KEY] = ['Bearer ' . $result['access_token']]; + } elseif (isset($result['id_token'])) { + $metadata_copy[self::AUTH_METADATA_KEY] = ['Bearer ' . $result['id_token']]; + } + return $metadata_copy; + } +} diff --git a/vendor/Gcp/google/cloud-core/VERSION b/vendor/Gcp/google/cloud-core/VERSION index 154cb93b..3ebf789f 100644 --- a/vendor/Gcp/google/cloud-core/VERSION +++ b/vendor/Gcp/google/cloud-core/VERSION @@ -1 +1 @@ -1.52.1 +1.56.0 diff --git a/vendor/Gcp/google/cloud-core/composer.json b/vendor/Gcp/google/cloud-core/composer.json index cf65a25f..50e364e4 100644 --- a/vendor/Gcp/google/cloud-core/composer.json +++ b/vendor/Gcp/google/cloud-core/composer.json @@ -6,22 +6,23 @@ "require": { "php": ">=7.4", "rize\/uri-template": "~0.3", - "google\/auth": "^1.18", - "guzzlehttp\/guzzle": "^5.3|^6.5.7|^7.4.4", + "google\/auth": "^1.34", + "guzzlehttp\/guzzle": "^6.5.8|^7.4.4", "guzzlehttp\/promises": "^1.4||^2.0", - "guzzlehttp\/psr7": "^1.7|^2.0", - "monolog\/monolog": "^1.1|^2.0|^3.0", - "psr\/http-message": "^1.0|^2.0" + "guzzlehttp\/psr7": "^2.6", + "monolog\/monolog": "^2.9|^3.0", + "psr\/http-message": "^1.0|^2.0", + "google\/gax": "^1.27.0" }, "require-dev": { "phpunit\/phpunit": "^9.0", "phpspec\/prophecy-phpunit": "^2.0", "squizlabs\/php_codesniffer": "2.*", - "phpdocumentor\/reflection": "^5.0", + "phpdocumentor\/reflection": "^5.3.3", + "phpdocumentor\/reflection-docblock": "^5.3", "erusev\/parsedown": "^1.6", - "google\/gax": "^1.19.1", "opis\/closure": "^3", - "google\/cloud-common-protos": "^0.4" + "google\/cloud-common-protos": "~0.5" }, "suggest": { "opis\/closure": "May be used to serialize closures to process jobs in the batch daemon. Please require version ^3.", diff --git a/vendor/Gcp/google/cloud-core/src/ApiHelperTrait.php b/vendor/Gcp/google/cloud-core/src/ApiHelperTrait.php new file mode 100644 index 00000000..01c37f6b --- /dev/null +++ b/vendor/Gcp/google/cloud-core/src/ApiHelperTrait.php @@ -0,0 +1,227 @@ + $value) { + $fFields[$key] = $this->formatValueForApi($value); + } + return ['fields' => $fFields]; + } + private function unpackStructFromApi(array $struct) + { + $vals = []; + foreach ($struct['fields'] as $key => $val) { + $vals[$key] = $this->unpackValue($val); + } + return $vals; + } + private function unpackValue($value) + { + if (\count($value) > 1) { + throw new \RuntimeException("Unexpected fields in struct: {$value}"); + } + foreach ($value as $setField => $setValue) { + switch ($setField) { + case 'listValue': + $valueList = []; + foreach ($setValue['values'] as $innerValue) { + $valueList[] = $this->unpackValue($innerValue); + } + return $valueList; + case 'structValue': + return $this->unpackStructFromApi($value['structValue']); + default: + return $setValue; + } + } + } + private function flattenStruct(array $struct) + { + return $struct['fields']; + } + private function flattenValue(array $value) + { + if (\count($value) > 1) { + throw new \RuntimeException("Unexpected fields in struct: {$value}"); + } + if (isset($value['nullValue'])) { + return null; + } + return \array_pop($value); + } + private function flattenListValue(array $value) + { + return $value['values']; + } + /** + * Format a list for the API. + * + * @param array $list + * @return array + */ + private function formatListForApi(array $list) + { + $values = []; + foreach ($list as $value) { + $values[] = $this->formatValueForApi($value); + } + return ['values' => $values]; + } + /** + * Format a value for the API. + * + * @param mixed $value + * @return array + */ + private function formatValueForApi($value) + { + $type = \gettype($value); + switch ($type) { + case 'string': + return ['string_value' => $value]; + case 'double': + case 'integer': + return ['number_value' => $value]; + case 'boolean': + return ['bool_value' => $value]; + case 'NULL': + return ['null_value' => NullValue::NULL_VALUE]; + case 'array': + if (!empty($value) && $this->isAssoc($value)) { + return ['struct_value' => $this->formatStructForApi($value)]; + } + return ['list_value' => $this->formatListForApi($value)]; + } + return []; + } + /** + * Format a gRPC timestamp to match the format returned by the REST API. + * + * @param array $timestamp + * @return string + */ + private function formatTimestampFromApi(array $timestamp) + { + $timestamp += ['seconds' => 0, 'nanos' => 0]; + $dt = $this->createDateTimeFromSeconds($timestamp['seconds']); + return $this->formatTimeAsString($dt, $timestamp['nanos']); + } + /** + * Format a timestamp for the API with nanosecond precision. + * + * @param string $value + * @return array + */ + private function formatTimestampForApi($value) + { + list($dt, $nanos) = $this->parseTimeString($value); + return ['seconds' => (int) $dt->format('U'), 'nanos' => (int) $nanos]; + } + /** + * Format a duration for the API. + * + * @param string|mixed $value + * @return array + */ + private function formatDurationForApi($value) + { + if (\is_string($value)) { + $d = \explode('.', \trim($value, 's')); + if (\count($d) < 2) { + $seconds = $d[0]; + $nanos = 0; + } else { + $seconds = (int) $d[0]; + $nanos = $this->convertFractionToNanoSeconds($d[1]); + } + } elseif ($value instanceof Duration) { + $d = $value->get(); + $seconds = $d['seconds']; + $nanos = $d['nanos']; + } + return ['seconds' => $seconds, 'nanos' => $nanos]; + } + /** + * Construct a gapic client. Allows for tests to intercept. + * + * @param string $gapicName + * @param array $config + * @return mixed + */ + protected function constructGapic($gapicName, array $config) + { + return new $gapicName($config); + } + /** + * Helper function to convert selective elements into protos out of a given input array. + * + * Example: + * ``` + * $output = $topic->convertDataToProtos(['schema' =>[], 'other vals'], ['schema' => Schema::class]); + * $output['schema']; // This will be of the Schema type. + * ``` + * + * @param array $input The input array. + * @param array $map The key,value pairs specifying the elements and the proto classes. + * + * @return array The modified array + */ + private function convertDataToProtos(array $input, array $map) : array + { + foreach ($map as $key => $className) { + if (isset($input[$key])) { + $input[$key] = $this->serializer->decodeMessage(new $className(), $input[$key]); + } + } + return $input; + } + /** + * Helper method used to split a supplied set of options into parameters that are passed into + * a proto message and optional args. + * We strictly treat the parameters allowed by `CallOptions` in GAX as the optional params + * and everything else that is passed is passed to the Proto message constructor. + */ + private function splitOptionalArgs(array $input, array $extraAllowedKeys = []) : array + { + $callOptionFields = \array_keys((new CallOptions([]))->toArray()); + $keys = \array_merge($callOptionFields, $extraAllowedKeys); + $optionalArgs = $this->pluckArray($keys, $input); + return [$input, $optionalArgs]; + } +} diff --git a/vendor/Gcp/google/cloud-core/src/Batch/BatchTrait.php b/vendor/Gcp/google/cloud-core/src/Batch/BatchTrait.php index 8a0d3998..6a1bcbb4 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/BatchTrait.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/BatchTrait.php @@ -125,7 +125,7 @@ protected abstract function getCallback(); * responsible for serializing closures used in the * `$clientConfig`. This is especially important when using the * batch daemon. **Defaults to** - * {@see Google\Cloud\Core\Batch\OpisClosureSerializer} if the + * {@see \Google\Cloud\Core\Batch\OpisClosureSerializer} if the * `opis/closure` library is installed. * } * @throws \InvalidArgumentException diff --git a/vendor/Gcp/google/cloud-core/src/Batch/HandleFailureTrait.php b/vendor/Gcp/google/cloud-core/src/Batch/HandleFailureTrait.php index 50aafcae..8acaac95 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/HandleFailureTrait.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/HandleFailureTrait.php @@ -68,7 +68,7 @@ public function handleFailure($idNum, array $items) } if ($this->failureFile) { $fp = @\fopen($this->failureFile, 'a'); - @\fwrite($fp, \serialize([$idNum => $items]) . \PHP_EOL); + @\fwrite($fp, \json_encode(\serialize([$idNum => $items])) . \PHP_EOL); @\fclose($fp); } } diff --git a/vendor/Gcp/google/cloud-core/src/Batch/InMemoryConfigStorage.php b/vendor/Gcp/google/cloud-core/src/Batch/InMemoryConfigStorage.php index cee78334..d6439476 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/InMemoryConfigStorage.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/InMemoryConfigStorage.php @@ -135,8 +135,9 @@ public function clear() * * We want to delay registering the shutdown function. The error * reporter also registers a shutdown function and the order matters. - * {@see Google\ErrorReporting\Bootstrap::init()} - * {@see http://php.net/manual/en/function.register-shutdown-function.php} + * + * @see \Google\Cloud\ErrorReporting\Bootstrap::init() + * @see http://php.net/manual/en/function.register-shutdown-function.php * * @param mixed $item An item to submit. * @param int $idNum A numeric id for the job. diff --git a/vendor/Gcp/google/cloud-core/src/Batch/InterruptTrait.php b/vendor/Gcp/google/cloud-core/src/Batch/InterruptTrait.php index c01cc899..836e36d5 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/InterruptTrait.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/InterruptTrait.php @@ -38,7 +38,8 @@ private function setupSignalHandlers() } /** * A signal handler for setting the terminate switch. - * {@see http://php.net/manual/en/function.pcntl-signal.php} + * + * @see http://php.net/manual/en/function.pcntl-signal.php * * @param int $signo The received signal. * @param mixed $siginfo [optional] An array representing the signal diff --git a/vendor/Gcp/google/cloud-core/src/Batch/QueueOverflowException.php b/vendor/Gcp/google/cloud-core/src/Batch/QueueOverflowException.php index 3baa1f64..fcb34272 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/QueueOverflowException.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/QueueOverflowException.php @@ -18,7 +18,7 @@ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Batch; /** - * Exception thrown in {@see Google\Cloud\Core\Batch\SysvProcessor::submit()} + * Exception thrown in {@see \Google\Cloud\Core\Batch\SysvProcessor::submit()} * method when it cannot add an item to the message queue. * Possible causes include: * diff --git a/vendor/Gcp/google/cloud-core/src/Batch/Retry.php b/vendor/Gcp/google/cloud-core/src/Batch/Retry.php index 12e3f97c..3187cf48 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/Retry.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/Retry.php @@ -55,6 +55,11 @@ public function retryAll() continue; } while ($line = \fgets($fp)) { + $jsonDecodedValue = \json_decode($line); + // Check if data json_encoded after serialization + if ($jsonDecodedValue !== null || $jsonDecodedValue !== \false) { + $line = $jsonDecodedValue; + } $a = \unserialize($line); $idNum = \key($a); $job = $this->runner->getJobFromIdNum($idNum); diff --git a/vendor/Gcp/google/cloud-core/src/Batch/SerializableClientTrait.php b/vendor/Gcp/google/cloud-core/src/Batch/SerializableClientTrait.php index 30102e76..439e8dd4 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/SerializableClientTrait.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/SerializableClientTrait.php @@ -45,7 +45,7 @@ trait SerializableClientTrait * responsible for serializing closures used in the * `$clientConfig`. This is especially important when using the * batch daemon. **Defaults to** - * {@see Google\Cloud\Core\Batch\OpisClosureSerializer} if the + * {@see \Google\Cloud\Core\Batch\OpisClosureSerializer} if the * `opis/closure` library is installed. * @type array $clientConfig A config used to construct the client upon * which requests will be made. diff --git a/vendor/Gcp/google/cloud-core/src/Batch/SimpleJobTrait.php b/vendor/Gcp/google/cloud-core/src/Batch/SimpleJobTrait.php index 2f5a455e..688344b1 100644 --- a/vendor/Gcp/google/cloud-core/src/Batch/SimpleJobTrait.php +++ b/vendor/Gcp/google/cloud-core/src/Batch/SimpleJobTrait.php @@ -52,7 +52,7 @@ public abstract function run(); * responsible for serializing closures used in the * `$clientConfig`. This is especially important when using the * batch daemon. **Defaults to** - * {@see Google\Cloud\Core\Batch\OpisClosureSerializer} if the + * {@see \Google\Cloud\Core\Batch\OpisClosureSerializer} if the * `opis/closure` library is installed. * } */ diff --git a/vendor/Gcp/google/cloud-core/src/DetectProjectIdTrait.php b/vendor/Gcp/google/cloud-core/src/DetectProjectIdTrait.php new file mode 100644 index 00000000..e6ca6285 --- /dev/null +++ b/vendor/Gcp/google/cloud-core/src/DetectProjectIdTrait.php @@ -0,0 +1,82 @@ + null, 'projectId' => null, 'projectIdRequired' => \false, 'hasEmulator' => \false, 'credentials' => null]; + if ($config['projectId']) { + return $config['projectId']; + } + if ($config['hasEmulator']) { + return 'emulator-project'; + } + if ($config['credentials'] && $config['credentials'] instanceof ProjectIdProviderInterface && ($projectId = $config['credentials']->getProjectId())) { + return $projectId; + } + if (\getenv('GOOGLE_CLOUD_PROJECT')) { + return \getenv('GOOGLE_CLOUD_PROJECT'); + } + if (\getenv('GCLOUD_PROJECT')) { + return \getenv('GCLOUD_PROJECT'); + } + $this->throwExceptionIfProjectIdRequired($config); + return ''; + } + /** + * Throws an exception if project id is required. + * @param array $config + * @throws GoogleException + */ + private function throwExceptionIfProjectIdRequired(array $config) + { + if ($config['projectIdRequired']) { + throw new GoogleException('No project ID was provided, ' . 'and we were unable to detect a default project ID.'); + } + } +} diff --git a/vendor/Gcp/google/cloud-core/src/ExponentialBackoff.php b/vendor/Gcp/google/cloud-core/src/ExponentialBackoff.php index 3a096597..11a9dbcd 100644 --- a/vendor/Gcp/google/cloud-core/src/ExponentialBackoff.php +++ b/vendor/Gcp/google/cloud-core/src/ExponentialBackoff.php @@ -117,7 +117,7 @@ public function setDelayFunction(callable $delayFunction) } /** * If not set, defaults to using - * {@see Google\Cloud\Core\ExponentialBackoff::calculateDelay()}. + * {@see \Google\Cloud\Core\ExponentialBackoff::calculateDelay()}. * * @param callable $calcDelayFunction * @return void diff --git a/vendor/Gcp/google/cloud-core/src/GrpcRequestWrapper.php b/vendor/Gcp/google/cloud-core/src/GrpcRequestWrapper.php index e0af5dd4..bae13052 100644 --- a/vendor/Gcp/google/cloud-core/src/GrpcRequestWrapper.php +++ b/vendor/Gcp/google/cloud-core/src/GrpcRequestWrapper.php @@ -20,20 +20,15 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\HttpHandler\HttpHandlerFactory; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception; use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\ApiException; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\OperationResponse; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\PagedListResponse; use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\Serializer; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\ServerStream; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\BadRequest; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Code; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\RetryInfo; /** * The GrpcRequestWrapper is responsible for delivering gRPC requests. */ class GrpcRequestWrapper { use RequestWrapperTrait; + use RequestProcessorTrait; /** * @var callable A handler used to deliver Psr7 requests specifically for * authentication. @@ -52,14 +47,10 @@ class GrpcRequestWrapper * @var array gRPC retry codes. */ private $grpcRetryCodes = [Code::UNKNOWN, Code::INTERNAL, Code::UNAVAILABLE, Code::DATA_LOSS]; - /** - * @var array Map of error metadata types to RPC wrappers. - */ - private $metadataTypes = ['google.rpc.retryinfo-bin' => RetryInfo::class, 'google.rpc.badrequest-bin' => BadRequest::class]; /** * @param array $config [optional] { * Configuration options. Please see - * {@see Google\Cloud\Core\RequestWrapperTrait::setCommonDefaults()} for + * {@see \Google\Cloud\Core\RequestWrapperTrait::setCommonDefaults()} for * the other available options. * * @type callable $authHttpHandler A handler used to deliver Psr7 @@ -125,95 +116,4 @@ public function send(callable $request, array $args, array $options = []) throw $ex; } } - /** - * Serializes a gRPC response. - * - * @param mixed $response - * @return \Generator|OperationResponse|array|null - */ - private function handleResponse($response) - { - if ($response instanceof PagedListResponse) { - $response = $response->getPage()->getResponseObject(); - } - if ($response instanceof Message) { - return $this->serializer->encodeMessage($response); - } - if ($response instanceof OperationResponse) { - return $response; - } - if ($response instanceof ServerStream) { - return $this->handleStream($response); - } - return null; - } - /** - * Handles a streaming response. - * - * @param ServerStream $response - * @return \Generator|array|null - * @throws Exception\ServiceException - */ - private function handleStream($response) - { - try { - foreach ($response->readAll() as $count => $result) { - $res = $this->serializer->encodeMessage($result); - (yield $res); - } - } catch (\Exception $ex) { - throw $this->convertToGoogleException($ex); - } - } - /** - * Convert a ApiCore exception to a Google Exception. - * - * @param \Exception $ex - * @return Exception\ServiceException - */ - private function convertToGoogleException($ex) - { - switch ($ex->getCode()) { - case Code::INVALID_ARGUMENT: - $exception = Exception\BadRequestException::class; - break; - case Code::NOT_FOUND: - case Code::UNIMPLEMENTED: - $exception = Exception\NotFoundException::class; - break; - case Code::ALREADY_EXISTS: - $exception = Exception\ConflictException::class; - break; - case Code::FAILED_PRECONDITION: - $exception = Exception\FailedPreconditionException::class; - break; - case Code::UNKNOWN: - $exception = Exception\ServerException::class; - break; - case Code::INTERNAL: - $exception = Exception\ServerException::class; - break; - case Code::ABORTED: - $exception = Exception\AbortedException::class; - break; - case Code::DEADLINE_EXCEEDED: - $exception = Exception\DeadlineExceededException::class; - break; - default: - $exception = Exception\ServiceException::class; - break; - } - $metadata = []; - if ($ex->getMetadata()) { - foreach ($ex->getMetadata() as $type => $binaryValue) { - if (!isset($this->metadataTypes[$type])) { - continue; - } - $metadataElement = new $this->metadataTypes[$type](); - $metadataElement->mergeFromString($binaryValue[0]); - $metadata[] = $this->serializer->encodeMessage($metadataElement); - } - } - return new $exception($ex->getMessage(), $ex->getCode(), $ex, $metadata); - } } diff --git a/vendor/Gcp/google/cloud-core/src/GrpcTrait.php b/vendor/Gcp/google/cloud-core/src/GrpcTrait.php index 03eccf4c..8ec57cc0 100644 --- a/vendor/Gcp/google/cloud-core/src/GrpcTrait.php +++ b/vendor/Gcp/google/cloud-core/src/GrpcTrait.php @@ -17,21 +17,20 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\GetUniverseDomainInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\ApiCore\CredentialsWrapper; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\ArrayTrait; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Duration; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\NotFoundException; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\ServiceException; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\GrpcRequestWrapper; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\NullValue; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Duration; /** * Provides shared functionality for gRPC service implementations. */ trait GrpcTrait { - use ArrayTrait; - use TimeTrait; use WhitelistTrait; + use ArrayTrait; /** * @var GrpcRequestWrapper Wrapper used to handle sending requests to the * gRPC API. @@ -81,21 +80,29 @@ public function send(callable $request, array $args, $whitelisted = \false) * * @param string $version * @param callable|null $authHttpHandler + * @param string|null $universeDomain * @return array */ - private function getGaxConfig($version, callable $authHttpHandler = null) + private function getGaxConfig($version, callable $authHttpHandler = null, string $universeDomain = null) { $config = ['libName' => 'gccl', 'libVersion' => $version, 'transport' => 'grpc']; // GAX v0.32.0 introduced the CredentialsWrapper class and a different // way to configure credentials. If the class exists, use this new method // otherwise default to legacy usage. if (\class_exists(CredentialsWrapper::class)) { - $config['credentials'] = new CredentialsWrapper($this->requestWrapper->getCredentialsFetcher(), $authHttpHandler); + $config['credentials'] = new CredentialsWrapper( + $this->requestWrapper->getCredentialsFetcher(), + $authHttpHandler, + // If the universe domain hasn't been explicitly set, check the the environment variable, + // otherwise assume GDU ("googleapis.com"). + ($universeDomain ?: \getenv('GOOGLE_CLOUD_UNIVERSE_DOMAIN')) ?: GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN + ); } else { $config += ['credentialsLoader' => $this->requestWrapper->getCredentialsFetcher(), 'authHttpHandler' => $authHttpHandler, 'enableCaching' => \false]; } return $config; } + use TimeTrait; /** * Format a struct for the API. * @@ -173,7 +180,7 @@ private function formatListForApi(array $list) /** * Format a value for the API. * - * @param array $value + * @param mixed $value * @return array */ private function formatValueForApi($value) @@ -223,7 +230,7 @@ private function formatTimestampForApi($value) /** * Format a duration for the API. * - * @param string|Duration $value + * @param string|mixed $value * @return array */ private function formatDurationForApi($value) diff --git a/vendor/Gcp/google/cloud-core/src/Iam/Iam.php b/vendor/Gcp/google/cloud-core/src/Iam/Iam.php index fbdd37bc..018f8711 100644 --- a/vendor/Gcp/google/cloud-core/src/Iam/Iam.php +++ b/vendor/Gcp/google/cloud-core/src/Iam/Iam.php @@ -23,7 +23,7 @@ * This class is not meant to be used directly. It should be accessed * through other objects which support IAM. * - * Policies can be created using the {@see Google\Cloud\Core\Iam\PolicyBuilder} + * Policies can be created using the {@see \Google\Cloud\Core\Iam\PolicyBuilder} * to help ensure their validity. * * Example: @@ -32,12 +32,12 @@ * // In this example, we'll use PubSub topics to demonstrate * // how IAM policies are managed. * - * use Google\Cloud\PubSub\PubSubClient; + * use Google\Cloud\Spanner\SpannerClient; * - * $pubsub = new PubSubClient(); - * $topic = $pubsub->topic('my-new-topic'); + * $spanner = new SpannerClient(); + * $instance = $spanner->instance('my-new-instance'); * - * $iam = $topic->iam(); + * $iam = $instance->iam(); * ``` */ class Iam @@ -88,7 +88,7 @@ public function __construct(IamConnectionInterface $connection, $resource, array * * If a policy has already been retrieved from the API, it will be returned. * To fetch a fresh copy of the policy, use - * {@see Google\Cloud\Core\Iam\Iam::reload()}. + * {@see \Google\Cloud\Core\Iam\Iam::reload()}. * * Example: * ``` @@ -124,7 +124,7 @@ public function policy(array $options = []) * ``` * * @param array|PolicyBuilder $policy The new policy, as an array or an - * instance of {@see Google\Cloud\Core\Iam\PolicyBuilder}. + * instance of {@see \Google\Cloud\Core\Iam\PolicyBuilder}. * @param array $options Configuration Options * @return array An array of policy data * @throws \InvalidArgumentException If the given policy is not an array or PolicyBuilder. diff --git a/vendor/Gcp/google/cloud-core/src/Iam/IamManager.php b/vendor/Gcp/google/cloud-core/src/Iam/IamManager.php new file mode 100644 index 00000000..0b804e68 --- /dev/null +++ b/vendor/Gcp/google/cloud-core/src/Iam/IamManager.php @@ -0,0 +1,193 @@ +topic('my-new-topic'); + * + * $iam = $topic->iam(); + * ``` + * + * @internal + */ +class IamManager +{ + use ArrayTrait; + private RequestHandler $requestHandler; + private Serializer $serializer; + private string $clientClass; + private string $resource; + private ?array $policy; + /** + * @param RequestHandler $requestHandler + * @param Serializer $serializer The serializer instance to encode/decode messages. + * @param string $clientClass The client class that will be passed on to the + * sendRequest method of the $requestHandler. + * @param string $resource + * @access private + */ + public function __construct(RequestHandler $requestHandler, Serializer $serializer, string $clientClass, string $resource) + { + $this->requestHandler = $requestHandler; + $this->serializer = $serializer; + $this->clientClass = $clientClass; + $this->resource = $resource; + $this->policy = null; + } + /** + * Get the existing IAM policy for this resource. + * + * If a policy has already been retrieved from the API, it will be returned. + * To fetch a fresh copy of the policy, use + * {@see IamManager::reload()}. + * + * Example: + * ``` + * $policy = $iam->policy(); + * ``` + * + * @param array $options Configuration Options + * @param int $options['requestedPolicyVersion'] Specify the policy version to + * request from the server. Please see + * [policy versioning](https://cloud.google.com/iam/docs/policies#versions) + * for more information. + * @return array An array of policy data + */ + public function policy(array $options = []) + { + if (!$this->policy) { + $this->reload($options); + } + return $this->policy; + } + /** + * Set the IAM policy for this resource. + * + * Bindings with invalid roles, or non-existent members will raise a server + * error. + * + * Example: + * ``` + * $policy = [ + * 'bindings' => [[ + * 'role' => 'roles/editor', + * 'members' => ['user:test@example.com'], + * ]] + * ]; + * $policy = $iam->setPolicy($policy); + * ``` + * ``` + * $oldPolicy = $iam->policy(); + * $oldPolicy['bindings'][0]['members'] = 'user:test@example.com'; + * + * $policy = $iam->setPolicy($oldPolicy); + * ``` + * + * @param array|PolicyBuilder $policy The new policy, as an array or an + * instance of {@see PolicyBuilder}. + * @param array $options Configuration Options + * @return array An array of policy data + * @throws InvalidArgumentException If the given policy is not an array or PolicyBuilder. + */ + public function setPolicy($policy, array $options = []) + { + if ($policy instanceof PolicyBuilder) { + $policy = $policy->result(); + } + if (!\is_array($policy)) { + throw new InvalidArgumentException('Given policy data must be an array or an instance of PolicyBuilder.'); + } + $policy = $this->serializer->decodeMessage(new Policy(), $policy); + $updateMask = $options['updateMask'] ?? []; + $data = ['resource' => $this->resource, 'policy' => $policy, 'updateMask' => $updateMask]; + $request = $this->serializer->decodeMessage(new SetIamPolicyRequest(), $data); + $this->policy = $this->requestHandler->sendRequest($this->clientClass, 'setIamPolicy', $request, $options); + return $this->policy; + } + /** + * Test if the current user has the given permissions on this resource. + * + * Invalid permissions will raise a BadRequestException. + * + * Example: + * ``` + * $allowedPermissions = $iam->testPermissions([ + * 'pubsub.topics.publish', + * 'pubsub.topics.attachSubscription' + * ]); + * ``` + * + * @param array $permissions A list of permissions to test + * @param array $options Configuration Options + * @return array A subset of $permissions, with only those allowed included. + */ + public function testPermissions(array $permissions, array $options = []) + { + $data = ['resource' => $this->resource, 'permissions' => $permissions]; + $request = $this->serializer->decodeMessage(new TestIamPermissionsRequest(), $data); + $res = $this->requestHandler->sendRequest($this->clientClass, 'testIamPermissions', $request, $options); + return isset($res['permissions']) ? $res['permissions'] : []; + } + /** + * Refresh the IAM policy for this resource. + * + * Example: + * ``` + * $policy = $iam->reload(); + * ``` + * + * @param array $options Configuration Options + * @return array An array of policy data + */ + public function reload(array $options = []) + { + $policyOptions = $this->pluck('policyOptions', $options, \false) ?: []; + $policyOptions = $this->serializer->decodeMessage(new GetPolicyOptions(), $policyOptions); + $data = ['resource' => $this->resource, 'options' => $policyOptions]; + $request = $this->serializer->decodeMessage(new GetIamPolicyRequest(), $data); + $this->policy = $this->requestHandler->sendRequest($this->clientClass, 'getIamPolicy', $request, $options); + return $this->policy; + } +} diff --git a/vendor/Gcp/google/cloud-core/src/InsecureCredentialsWrapper.php b/vendor/Gcp/google/cloud-core/src/InsecureCredentialsWrapper.php index de59cd4f..398d2486 100644 --- a/vendor/Gcp/google/cloud-core/src/InsecureCredentialsWrapper.php +++ b/vendor/Gcp/google/cloud-core/src/InsecureCredentialsWrapper.php @@ -30,4 +30,7 @@ public function getAuthorizationHeaderCallback($audience = null) { return null; } + public function checkUniverseDomain() + { + } } diff --git a/vendor/Gcp/google/cloud-core/src/LongRunning/LROTrait.php b/vendor/Gcp/google/cloud-core/src/LongRunning/LROTrait.php index 6440a697..559716fb 100644 --- a/vendor/Gcp/google/cloud-core/src/LongRunning/LROTrait.php +++ b/vendor/Gcp/google/cloud-core/src/LongRunning/LROTrait.php @@ -29,6 +29,7 @@ trait LROTrait { /** * @var LongRunningConnectionInterface + * @internal */ private $lroConnection; /** @@ -43,6 +44,8 @@ trait LROTrait * Populate required LRO properties. * * @param LongRunningConnectionInterface $lroConnection The LRO Connection. + * This object is created by internal classes, + * and should not be instantiated outside of this context. * @param array $callablesMap An collection of form [(string) typeUrl, (callable) callable] * providing a function to invoke when an operation completes. The * callable Type should correspond to an expected value of diff --git a/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php b/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php index a6f0b7bf..9695ac37 100644 --- a/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php +++ b/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningConnectionInterface.php @@ -21,6 +21,7 @@ * Defines the calls required to manage Long Running Operations. * * This interface should be implemented in a service's Connection namespace. + * @internal */ interface LongRunningConnectionInterface { diff --git a/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningOperation.php b/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningOperation.php index ea35f06d..e6d882c4 100644 --- a/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningOperation.php +++ b/vendor/Gcp/google/cloud-core/src/LongRunning/LongRunningOperation.php @@ -28,6 +28,7 @@ class LongRunningOperation const STATE_ERROR = 'error'; /** * @var LongRunningConnectionInterface + * @internal */ private $connection; /** @@ -53,6 +54,8 @@ class LongRunningOperation /** * @param LongRunningConnectionInterface $connection An implementation * mapping to methods which handle LRO resolution in the service. + * This object is created by internal classes, + * and should not be instantiated outside of this context. * @param string $name The Operation name. * @param array $callablesMap An collection of form [(string) typeUrl, (callable) callable] * providing a function to invoke when an operation completes. The diff --git a/vendor/Gcp/google/cloud-core/src/Report/EmptyMetadataProvider.php b/vendor/Gcp/google/cloud-core/src/Report/EmptyMetadataProvider.php index 2ae45a34..8505949e 100644 --- a/vendor/Gcp/google/cloud-core/src/Report/EmptyMetadataProvider.php +++ b/vendor/Gcp/google/cloud-core/src/Report/EmptyMetadataProvider.php @@ -24,7 +24,8 @@ class EmptyMetadataProvider implements MetadataProviderInterface { /** * Return an array representing MonitoredResource. - * {@see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource} + * + * @see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource * * @return array */ diff --git a/vendor/Gcp/google/cloud-core/src/Report/GAEMetadataProvider.php b/vendor/Gcp/google/cloud-core/src/Report/GAEMetadataProvider.php index 91fa417e..c601ecc4 100644 --- a/vendor/Gcp/google/cloud-core/src/Report/GAEMetadataProvider.php +++ b/vendor/Gcp/google/cloud-core/src/Report/GAEMetadataProvider.php @@ -39,7 +39,8 @@ public function __construct(array $server) } /** * Return an array representing MonitoredResource. - * {@see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource} + * + * @see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource * * @return array */ diff --git a/vendor/Gcp/google/cloud-core/src/Report/MetadataProviderInterface.php b/vendor/Gcp/google/cloud-core/src/Report/MetadataProviderInterface.php index ffa8d851..2a04b821 100644 --- a/vendor/Gcp/google/cloud-core/src/Report/MetadataProviderInterface.php +++ b/vendor/Gcp/google/cloud-core/src/Report/MetadataProviderInterface.php @@ -24,7 +24,8 @@ interface MetadataProviderInterface { /** * Return an array representing MonitoredResource. - * {@see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource} + * + * @see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource * * @return array */ diff --git a/vendor/Gcp/google/cloud-core/src/Report/SimpleMetadataProvider.php b/vendor/Gcp/google/cloud-core/src/Report/SimpleMetadataProvider.php index 0396be54..693cc06b 100644 --- a/vendor/Gcp/google/cloud-core/src/Report/SimpleMetadataProvider.php +++ b/vendor/Gcp/google/cloud-core/src/Report/SimpleMetadataProvider.php @@ -42,7 +42,8 @@ public function __construct($monitoredResource = [], $projectId = '', $serviceId } /** * Return an array representing MonitoredResource. - * {@see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource} + * + * @see https://cloud.google.com/logging/docs/reference/v2/rest/v2/MonitoredResource * * @return array */ diff --git a/vendor/Gcp/google/cloud-core/src/RequestHandler.php b/vendor/Gcp/google/cloud-core/src/RequestHandler.php new file mode 100644 index 00000000..814af5c0 --- /dev/null +++ b/vendor/Gcp/google/cloud-core/src/RequestHandler.php @@ -0,0 +1,114 @@ +serializer = $serializer; + $clientConfig['serializer'] = $serializer; + // Adds some defaults + // gccl needs to be present for handwritten clients + $clientConfig += ['libName' => 'gccl', 'emulatorHost' => null]; + if ((bool) $clientConfig['emulatorHost']) { + $emulatorConfig = $this->emulatorGapicConfig($clientConfig['emulatorHost']); + $clientConfig = \array_merge($clientConfig, $emulatorConfig); + } + //@codeCoverageIgnoreEnd + // Initialize the client classes and store them in memory + $this->clients = []; + foreach ($clientClasses as $className) { + $this->clients[$className] = new $className($clientConfig); + } + } + /** + * Helper function that forwards the request to a client obj. + * + * @param string $clientClass The request will be forwarded to this client class. + * @param string $method This method needs to be called on the client obj. + * @param Message $request The protobuf Request instance to pass as the first argument to the $method. + * @param array $optionalArgs The optional args. + * @param bool $whitelisted This decides the behaviour when a NotFoundException is encountered. + * + * @return \Generator|OperationResponse|array|null + * + * @throws ServiceException + */ + public function sendRequest(string $clientClass, string $method, Message $request, array $optionalArgs, bool $whitelisted = \false) + { + $clientObj = $this->getClientObject($clientClass); + if (!$clientObj) { + return null; + } + $allArgs = [$request]; + $allArgs[] = $optionalArgs; + try { + $callable = [$clientObj, $method]; + $response = \call_user_func_array($callable, $allArgs); + return $this->handleResponse($response); + } catch (ApiException $ex) { + throw $this->convertToGoogleException($ex); + } catch (NotFoundException $e) { + if ($whitelisted) { + throw $this->modifyWhitelistedError($e); + } + throw $e; + } + } + /** + * Helper function that returns a client object stored in memory + * using the client class as key. + * @param $clientClass The client class whose object we need. + * @return mixed + */ + private function getClientObject(string $clientClass) + { + return $this->clients[$clientClass] ?? null; + } +} diff --git a/vendor/Gcp/google/cloud-core/src/RequestProcessorTrait.php b/vendor/Gcp/google/cloud-core/src/RequestProcessorTrait.php new file mode 100644 index 00000000..12e12d92 --- /dev/null +++ b/vendor/Gcp/google/cloud-core/src/RequestProcessorTrait.php @@ -0,0 +1,130 @@ + RetryInfo::class, 'google.rpc.badrequest-bin' => BadRequest::class]; + /** + * Serializes a gRPC response. + * + * @param mixed $response + * @return \Generator|OperationResponse|array|null + */ + private function handleResponse($response) + { + if ($response instanceof PagedListResponse) { + $response = $response->getPage()->getResponseObject(); + } + if ($response instanceof Message) { + return $this->serializer->encodeMessage($response); + } + if ($response instanceof OperationResponse) { + return $response; + } + if ($response instanceof ServerStream) { + return $this->handleStream($response); + } + return null; + } + /** + * Handles a streaming response. + * + * @param ServerStream $response + * @return \Generator|array|null + * @throws Exception\ServiceException + */ + private function handleStream(ServerStream $response) + { + try { + foreach ($response->readAll() as $count => $result) { + $res = $this->serializer->encodeMessage($result); + (yield $res); + } + } catch (\Exception $ex) { + throw $this->convertToGoogleException($ex); + } + } + /** + * Convert a ApiCore exception to a Google Exception. + * + * @param \Exception $ex + * @return ServiceException + */ + private function convertToGoogleException(\Exception $ex) : ServiceException + { + switch ($ex->getCode()) { + case Code::INVALID_ARGUMENT: + $exception = Exception\BadRequestException::class; + break; + case Code::NOT_FOUND: + case Code::UNIMPLEMENTED: + $exception = Exception\NotFoundException::class; + break; + case Code::ALREADY_EXISTS: + $exception = Exception\ConflictException::class; + break; + case Code::FAILED_PRECONDITION: + $exception = Exception\FailedPreconditionException::class; + break; + case Code::UNKNOWN: + $exception = Exception\ServerException::class; + break; + case Code::INTERNAL: + $exception = Exception\ServerException::class; + break; + case Code::ABORTED: + $exception = Exception\AbortedException::class; + break; + case Code::DEADLINE_EXCEEDED: + $exception = Exception\DeadlineExceededException::class; + break; + default: + $exception = Exception\ServiceException::class; + break; + } + $metadata = []; + if (\method_exists($ex, 'getMetadata') && $ex->getMetadata()) { + foreach ($ex->getMetadata() as $type => $binaryValue) { + if (!isset($this->metadataTypes[$type])) { + continue; + } + $metadataElement = new $this->metadataTypes[$type](); + $metadataElement->mergeFromString($binaryValue[0]); + $metadata[] = $this->serializer->encodeMessage($metadataElement); + } + } + return new $exception($ex->getMessage(), $ex->getCode(), $ex, $metadata); + } +} diff --git a/vendor/Gcp/google/cloud-core/src/RequestWrapper.php b/vendor/Gcp/google/cloud-core/src/RequestWrapper.php index 6535cd6c..c62057a7 100644 --- a/vendor/Gcp/google/cloud-core/src/RequestWrapper.php +++ b/vendor/Gcp/google/cloud-core/src/RequestWrapper.php @@ -17,12 +17,16 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\FetchAuthTokenCache; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\FetchAuthTokenInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\GetQuotaProjectInterface; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\GetUniverseDomainInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\HttpHandler\Guzzle6HttpHandler; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\HttpHandler\HttpHandlerFactory; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\UpdateMetadataInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\ServiceException; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\RequestWrapperTrait; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\GoogleException; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Exception\RequestException; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Promise\PromiseInterface; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\Utils; @@ -80,15 +84,24 @@ class RequestWrapper * between attempts to retry. */ private $calcDelayFunction; + /** + * @var string The universe domain to verify against the credentials. + */ + private string $universeDomain; + /** + * @var bool Ensure we only check the universe domain once. + */ + private bool $hasCheckedUniverse = \false; /** * @param array $config [optional] { * Configuration options. Please see - * {@see Google\Cloud\Core\RequestWrapperTrait::setCommonDefaults()} for + * {@see \Google\Cloud\Core\RequestWrapperTrait::setCommonDefaults()} for * the other available options. * * @type string $componentVersion The current version of the component from * which the request originated. * @type string $accessToken Access token used to sign requests. + * Deprecated: This option is no longer supported. Use the `$credentialsFetcher` option instead. * @type callable $asyncHttpHandler *Experimental* A handler used to * deliver PSR-7 requests asynchronously. Function signature should match: * `function (RequestInterface $request, array $options = []) : PromiseInterface`. @@ -110,12 +123,13 @@ class RequestWrapper * @type callable $restCalcDelayFunction Sets the conditions for * determining how long to wait between attempts to retry. Function * signature should match: `function (int $attempt) : int`. + * @type string $universeDomain The expected universe of the credentials. Defaults to "googleapis.com". * } */ public function __construct(array $config = []) { $this->setCommonDefaults($config); - $config += ['accessToken' => null, 'asyncHttpHandler' => null, 'authHttpHandler' => null, 'httpHandler' => null, 'restOptions' => [], 'shouldSignRequest' => \true, 'componentVersion' => null, 'restRetryFunction' => null, 'restDelayFunction' => null, 'restCalcDelayFunction' => null]; + $config += ['accessToken' => null, 'asyncHttpHandler' => null, 'authHttpHandler' => null, 'httpHandler' => null, 'restOptions' => [], 'shouldSignRequest' => \true, 'componentVersion' => null, 'restRetryFunction' => null, 'restDelayFunction' => null, 'restCalcDelayFunction' => null, 'universeDomain' => GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN]; $this->componentVersion = $config['componentVersion']; $this->accessToken = $config['accessToken']; $this->restOptions = $config['restOptions']; @@ -128,6 +142,7 @@ public function __construct(array $config = []) $this->httpHandler = $config['httpHandler'] ?: HttpHandlerFactory::build(); $this->authHttpHandler = $config['authHttpHandler'] ?: $this->httpHandler; $this->asyncHttpHandler = $config['asyncHttpHandler'] ?: $this->buildDefaultAsyncHandler(); + $this->universeDomain = $config['universeDomain']; if ($this->credentialsFetcher instanceof AnonymousCredentials) { $this->shouldSignRequest = \false; } @@ -245,39 +260,54 @@ private function applyHeaders(RequestInterface $request, array $options = []) $headers[Retry::RETRY_HEADER_KEY] = \sprintf('%s %s', $headers[Retry::RETRY_HEADER_KEY], \implode(' ', $options['retryHeaders'])); unset($options['retryHeaders']); } + $request = Utils::modifyRequest($request, ['set_headers' => $headers]); if ($this->shouldSignRequest) { $quotaProject = $this->quotaProject; - $token = null; if ($this->accessToken) { - $token = $this->accessToken; + // if an access token is provided, check the universe domain against "googleapis.com" + $this->checkUniverseDomain(null); + $request = $request->withHeader('authorization', 'Bearer ' . $this->accessToken); } else { + // if a credentials fetcher is provided, check the universe domain against the + // credential's universe domain $credentialsFetcher = $this->getCredentialsFetcher(); - $token = $this->fetchCredentials($credentialsFetcher)['access_token']; + $this->checkUniverseDomain($credentialsFetcher); + $request = $this->addAuthHeaders($request, $credentialsFetcher); if ($credentialsFetcher instanceof GetQuotaProjectInterface) { $quotaProject = $credentialsFetcher->getQuotaProject(); } } - $headers['Authorization'] = 'Bearer ' . $token; if ($quotaProject) { - $headers['X-Goog-User-Project'] = [$quotaProject]; + $request = $request->withHeader('X-Goog-User-Project', $quotaProject); } + } else { + // If we are not signing the request, check the universe domain against "googleapis.com" + $this->checkUniverseDomain(null); } - return Utils::modifyRequest($request, ['set_headers' => $headers]); + return $request; } /** - * Fetches credentials. + * Adds auth headers to the request. * - * @param FetchAuthTokenInterface $credentialsFetcher + * @param RequestInterface $request + * @param FetchAuthTokenInterface $fetcher * @return array * @throws ServiceException */ - private function fetchCredentials(FetchAuthTokenInterface $credentialsFetcher) + private function addAuthHeaders(RequestInterface $request, FetchAuthTokenInterface $fetcher) { $backoff = new ExponentialBackoff($this->retries, $this->getRetryFunction()); try { - return $backoff->execute(function () use($credentialsFetcher) { - if ($token = $credentialsFetcher->fetchAuthToken($this->authHttpHandler)) { - return $token; + return $backoff->execute(function () use($request, $fetcher) { + if (!$fetcher instanceof UpdateMetadataInterface || $fetcher instanceof FetchAuthTokenCache && !$fetcher->getFetcher() instanceof UpdateMetadataInterface) { + // This covers an edge case where the token fetcher does not implement UpdateMetadataInterface, + // which only would happen if a user implemented a custom fetcher + if ($token = $fetcher->fetchAuthToken($this->authHttpHandler)) { + return $request->withHeader('authorization', 'Bearer ' . $token['access_token']); + } + } else { + $headers = $fetcher->updateMetadata($request->getHeaders(), null, $this->authHttpHandler); + return Utils::modifyRequest($request, ['set_headers' => $headers]); } // As we do not know the reason the credentials fetcher could not fetch the // token, we should not retry. @@ -368,4 +398,26 @@ private function buildDefaultAsyncHandler() { return $this->httpHandler instanceof Guzzle6HttpHandler ? [$this->httpHandler, 'async'] : [HttpHandlerFactory::build(), 'async']; } + /** + * Verify that the expected universe domain matches the universe domain from the credentials. + */ + private function checkUniverseDomain(FetchAuthTokenInterface $credentialsFetcher = null) + { + if (\false === $this->hasCheckedUniverse) { + if ($this->universeDomain === '') { + throw new GoogleException('The universe domain cannot be empty.'); + } + if (\is_null($credentialsFetcher)) { + if ($this->universeDomain !== GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN) { + throw new GoogleException(\sprintf('The accessToken option is not supported outside of the default universe domain (%s).', GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN)); + } + } else { + $credentialsUniverse = $credentialsFetcher instanceof GetUniverseDomainInterface ? $credentialsFetcher->getUniverseDomain() : GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN; + if ($credentialsUniverse !== $this->universeDomain) { + throw new GoogleException(\sprintf('The configured universe domain (%s) does not match the credential universe domain (%s)', $this->universeDomain, $credentialsUniverse)); + } + } + $this->hasCheckedUniverse = \true; + } + } } diff --git a/vendor/Gcp/google/cloud-core/src/RestTrait.php b/vendor/Gcp/google/cloud-core/src/RestTrait.php index c91ecb4b..25038c5c 100644 --- a/vendor/Gcp/google/cloud-core/src/RestTrait.php +++ b/vendor/Gcp/google/cloud-core/src/RestTrait.php @@ -19,6 +19,7 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\NotFoundException; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Exception\ServiceException; +use UnexpectedValueException; /** * Provides shared functionality for REST service implementations. */ @@ -93,17 +94,31 @@ public function send($resource, $method, array $options = [], $whitelisted = \fa * * @param string $default * @param array $config + * @param string $apiEndpointTemplate * @return string */ - private function getApiEndpoint($default, array $config) + private function getApiEndpoint($default, array $config, string $apiEndpointTemplate = null) { - $res = $config['apiEndpoint'] ?? $default; - if (\substr($res, -1) !== '/') { - $res = $res . '/'; + // If the $default parameter is provided, or the user has set an "apiEndoint" config option, + // fall back to the previous behavior. + if ($res = $config['apiEndpoint'] ?? $default) { + if (\substr($res, -1) !== '/') { + $res = $res . '/'; + } + if (\strpos($res, '//') === \false) { + $res = 'https://' . $res; + } + return $res; + } + // One of the $default or the $template must always be set + if (!$apiEndpointTemplate) { + throw new UnexpectedValueException('An API endpoint template must be provided if no "apiEndpoint" or default endpoint is set.'); } - if (\strpos($res, '//') === \false) { - $res = 'https://' . $res; + if (!isset($config['universeDomain'])) { + throw new UnexpectedValueException('The "universeDomain" config value must be set to use the default API endpoint template.'); } - return $res; + $apiEndpoint = \str_replace('UNIVERSE_DOMAIN', $config['universeDomain'], $apiEndpointTemplate); + // Preserve the behavior of guaranteeing a trailing "/" + return $apiEndpoint . (\substr($apiEndpoint, -1) !== '/' ? '/' : ''); } } diff --git a/vendor/Gcp/google/cloud-core/src/Retry.php b/vendor/Gcp/google/cloud-core/src/Retry.php index f847fbd6..de48cf9d 100644 --- a/vendor/Gcp/google/cloud-core/src/Retry.php +++ b/vendor/Gcp/google/cloud-core/src/Retry.php @@ -20,7 +20,7 @@ /** * Retry implementation. * - * Unlike {@see Google\Cloud\Core\ExponentialBackoff}, Retry requires an implementor + * Unlike {@see \Google\Cloud\Core\ExponentialBackoff}, Retry requires an implementor * to supply wait times for each iteration. */ class Retry diff --git a/vendor/Gcp/google/cloud-core/src/ServiceBuilder.php b/vendor/Gcp/google/cloud-core/src/ServiceBuilder.php index 022769b2..48371af0 100644 --- a/vendor/Gcp/google/cloud-core/src/ServiceBuilder.php +++ b/vendor/Gcp/google/cloud-core/src/ServiceBuilder.php @@ -107,10 +107,10 @@ public function __construct(array $config = []) * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type bool $returnInt64AsObject If true, 64 bit integers will be - * returned as a {@see Google\Cloud\Core\Int64} object for 32 bit + * returned as a {@see \Google\Cloud\Core\Int64} object for 32 bit * platform compatibility. **Defaults to** false. * @type string $location If provided, determines the default geographic * location used when creating datasets and managing jobs. Please @@ -137,10 +137,10 @@ public function bigQuery(array $config = []) * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type bool $returnInt64AsObject If true, 64 bit integers will be - * returned as a {@see Google\Cloud\Core\Int64} object for 32 bit + * returned as a {@see \Google\Cloud\Core\Int64} object for 32 bit * platform compatibility. **Defaults to** false. * @return DatastoreClient */ @@ -160,10 +160,10 @@ public function datastore(array $config = []) * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type bool $returnInt64AsObject If true, 64 bit integers will be - * returned as a {@see Google\Cloud\Core\Int64} object for 32 bit + * returned as a {@see \Google\Cloud\Core\Int64} object for 32 bit * platform compatibility. **Defaults to** false. * @return FirestoreClient */ @@ -183,7 +183,7 @@ public function firestore(array $config = []) * ``` * * @param array $config [optional] Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. * @return LoggingClient */ public function logging(array $config = []) @@ -203,7 +203,7 @@ public function logging(array $config = []) * ``` * * @param array $config [optional] Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. * @return LanguageClient */ public function language(array $config = []) @@ -217,12 +217,12 @@ public function language(array $config = []) * * Example: * ``` - * $pubsub = $cloud->pubsub(); + * $pubsub = $cloud->pubsub(['projectId' => 'my-project']); * ``` * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type string $transport The transport type used for requests. May be * either `grpc` or `rest`. **Defaults to** `grpc` if gRPC support @@ -245,10 +245,10 @@ public function pubsub(array $config = []) * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type bool $returnInt64AsObject If true, 64 bit integers will be - * returned as a {@see Google\Cloud\Core\Int64} object for 32 bit + * returned as a {@see \Google\Cloud\Core\Int64} object for 32 bit * platform compatibility. **Defaults to** false. * } * @return SpannerClient @@ -272,7 +272,7 @@ public function spanner(array $config = []) * * @param array $config [optional] { * Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the other available options. * * @type string $languageCode The language of the content to * be recognized. Only BCP-47 (e.g., `"en-US"`, `"es-ES"`) @@ -296,7 +296,7 @@ public function speech(array $config = []) * ``` * * @param array $config [optional] Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. * @return StorageClient */ public function storage(array $config = []) @@ -314,7 +314,7 @@ public function storage(array $config = []) * ``` * * @param array $config [optional] Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. * @return TraceClient */ public function trace(array $config = []) @@ -333,7 +333,7 @@ public function trace(array $config = []) * ``` * * @param array $config [optional] Configuration options. See - * {@see Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. + * {@see \Google\Cloud\Core\ServiceBuilder::__construct()} for the available options. * @return VisionClient */ public function vision(array $config = []) diff --git a/vendor/Gcp/google/cloud-core/src/Upload/ResumableUploader.php b/vendor/Gcp/google/cloud-core/src/Upload/ResumableUploader.php index 440948bc..571e5517 100644 --- a/vendor/Gcp/google/cloud-core/src/Upload/ResumableUploader.php +++ b/vendor/Gcp/google/cloud-core/src/Upload/ResumableUploader.php @@ -47,8 +47,8 @@ class ResumableUploader extends AbstractUploader protected $resumeUri; /** * Classes extending ResumableUploader may provide request headers to be - * included in {@see Google\Cloud\Core\Upload\ResumableUploader::upload()} - * and {@see Google\Cloud\Core\Upload\ResumableUploader::createResumeUri{}}. + * included in {@see \Google\Cloud\Core\Upload\ResumableUploader::upload()} + * and {@see \Google\Cloud\Core\Upload\ResumableUploader::createResumeUri{}}. * * @var array */ @@ -123,7 +123,7 @@ public function resume($resumeUri) * Triggers the upload process. * * Errors are of form [`google.rpc.Status`](https://cloud.google.com/apis/design/errors#error_model), - * and may be obtained via {@see Google\Cloud\Core\Exception\ServiceException::getMetadata()}. + * and may be obtained via {@see \Google\Cloud\Core\Exception\ServiceException::getMetadata()}. * * @return array * @throws ServiceException diff --git a/vendor/Gcp/google/cloud-storage/README.md b/vendor/Gcp/google/cloud-storage/README.md index ae9d9805..9837283d 100644 --- a/vendor/Gcp/google/cloud-storage/README.md +++ b/vendor/Gcp/google/cloud-storage/README.md @@ -17,18 +17,12 @@ scenarios including serving website content, storing data for archival and disas To begin, install the preferred dependency manager for PHP, [Composer](https://getcomposer.org/). -Now to install just this component: +Now install this component: ```sh $ composer require google/cloud-storage ``` -Or to install the entire suite of components at once: - -```sh -$ composer require google/cloud -``` - ### Authentication Please see our [Authentication guide](https://github.com/googleapis/google-cloud-php/blob/main/AUTHENTICATION.md) for more information diff --git a/vendor/Gcp/google/cloud-storage/VERSION b/vendor/Gcp/google/cloud-storage/VERSION index 7aa332e4..5edffce6 100644 --- a/vendor/Gcp/google/cloud-storage/VERSION +++ b/vendor/Gcp/google/cloud-storage/VERSION @@ -1 +1 @@ -1.33.0 +1.39.0 diff --git a/vendor/Gcp/google/cloud-storage/composer.json b/vendor/Gcp/google/cloud-storage/composer.json index bf20bd15..e3b762d3 100644 --- a/vendor/Gcp/google/cloud-storage/composer.json +++ b/vendor/Gcp/google/cloud-storage/composer.json @@ -5,15 +5,15 @@ "minimum-stability": "stable", "require": { "php": ">=7.4", - "google\/cloud-core": "^1.51.3", - "google\/crc32": "^0.2.0", + "google\/cloud-core": "^1.55", "ramsey\/uuid": "^4.2.3" }, "require-dev": { "phpunit\/phpunit": "^9.0", "phpspec\/prophecy-phpunit": "^2.0", "squizlabs\/php_codesniffer": "2.*", - "phpdocumentor\/reflection": "^5.0", + "phpdocumentor\/reflection": "^5.3.3", + "phpdocumentor\/reflection-docblock": "^5.3", "erusev\/parsedown": "^1.6", "phpseclib\/phpseclib": "^2.0||^3.0", "google\/cloud-pubsub": "^1.0" diff --git a/vendor/Gcp/google/cloud-storage/src/Acl.php b/vendor/Gcp/google/cloud-storage/src/Acl.php index 6350217d..ec29d046 100644 --- a/vendor/Gcp/google/cloud-storage/src/Acl.php +++ b/vendor/Gcp/google/cloud-storage/src/Acl.php @@ -43,6 +43,7 @@ class Acl const ROLE_OWNER = 'OWNER'; /** * @var ConnectionInterface Represents a connection to Cloud Storage. + * @internal */ protected $connection; /** @@ -51,7 +52,8 @@ class Acl private $aclOptions; /** * @param ConnectionInterface $connection Represents a connection to - * Cloud Storage. + * Cloud Storage. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param string $type The type of access control this instance applies to. * @param array $identity Represents which bucket, file, or generation this * instance applies to. @@ -67,8 +69,10 @@ public function __construct(ConnectionInterface $connection, $type, array $ident $this->aclOptions = $identity + ['type' => $type]; } /** - * Delete access controls on a {@see Google\Cloud\Storage\Bucket} or - * {@see Google\Cloud\Storage\StorageObject} for a specified entity. + * Delete access controls. + * + * Delete access controls on a {@see Bucket} or + * {@see StorageObject} for a specified entity. * * Example: * ``` @@ -92,8 +96,10 @@ public function delete($entity, array $options = []) $this->connection->deleteAcl($options + $aclOptions); } /** - * Get access controls on a {@see Google\Cloud\Storage\Bucket} or - * {@see Google\Cloud\Storage\StorageObject}. By default this will return all available + * Get access controls. + * + * Get access controls on a {@see Bucket} or + * {@see StorageObject}. By default this will return all available * access controls. You may optionally specify a single entity to return * details for as well. * @@ -125,8 +131,10 @@ public function get(array $options = []) return $response['items']; } /** - * Add access controls on a {@see Google\Cloud\Storage\Bucket} or - * {@see Google\Cloud\Storage\StorageObject}. + * Add access controls. + * + * Add access controls on a {@see Bucket} or + * {@see StorageObject}. * * Example: * ``` @@ -152,8 +160,9 @@ public function add($entity, $role, array $options = []) return $this->connection->insertAcl($options + $aclOptions); } /** - * Update access controls on a {@see Google\Cloud\Storage\Bucket} or - * {@see Google\Cloud\Storage\StorageObject}. + * Update access controls. + * + * Update access controls on a {@see Bucket} or {@see StorageObject}. * * Example: * ``` diff --git a/vendor/Gcp/google/cloud-storage/src/Bucket.php b/vendor/Gcp/google/cloud-storage/src/Bucket.php index f116dd0f..96459397 100644 --- a/vendor/Gcp/google/cloud-storage/src/Bucket.php +++ b/vendor/Gcp/google/cloud-storage/src/Bucket.php @@ -61,6 +61,7 @@ class Bucket private $acl; /** * @var ConnectionInterface Represents a connection to Cloud Storage. + * @internal */ private $connection; /** @@ -85,7 +86,8 @@ class Bucket private $iam; /** * @param ConnectionInterface $connection Represents a connection to Cloud - * Storage. + * Storage. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param string $name The bucket's name. * @param array $info [optional] The bucket's metadata. */ @@ -247,6 +249,13 @@ public function exists(array $options = []) * Acceptable values include, `"authenticatedRead"`, * `"bucketOwnerFullControl"`, `"bucketOwnerRead"`, `"private"`, * `"projectPrivate"`, and `"publicRead"`. + * @type array $retention The full list of available options are outlined + * at the [JSON API docs](https://cloud.google.com/storage/docs/json_api/v1/objects/insert#request-body). + * @type string $retention.retainUntilTime The earliest time in RFC 3339 + * UTC "Zulu" format that the object can be deleted or replaced. + * This is the retention configuration set for this object. + * @type string $retention.mode The mode of the retention configuration, + * which can be either `"Unlocked"` or `"Locked"`. * @type array $metadata The full list of available options are outlined * at the [JSON API docs](https://cloud.google.com/storage/docs/json_api/v1/objects/insert#request-body). * @type array $metadata.metadata User-provided metadata, in key/value pairs. @@ -494,8 +503,10 @@ public function getStreamableUploader($data, array $options = []) } /** * Lazily instantiates an object. There are no network requests made at this - * point. To see the operations that can be performed on an object please - * see {@see Google\Cloud\Storage\StorageObject}. + * point. + * + * To see the operations that can be performed on an object please + * see {@see StorageObject}. * * Example: * ``` @@ -552,6 +563,9 @@ public function object($name, array $options = []) * from the prefix, contain delimiter will have their name, * truncated after the delimiter, returned in prefixes. Duplicate * prefixes are omitted. + * @type bool $includeFoldersAsPrefixes If true, will also include folders + * and managed folders (besides objects) in the returned prefixes. + * Only applicable if delimiter is set to '/'. * @type int $maxResults Maximum number of results to return per * request. **Defaults to** `1000`. * @type int $resultLimit Limit the number of results returned in total. @@ -660,7 +674,7 @@ public function objects(array $options = []) * } * @return Notification * @throws \InvalidArgumentException When providing a type other than string - * or {@see Google\Cloud\PubSub\Topic} as $topic. + * or {@see \Google\Cloud\PubSub\Topic} as $topic. * @throws GoogleException When a project ID has not been detected. * @experimental The experimental flag means that while we believe this * method or class is ready for use, it may change before release in @@ -674,8 +688,10 @@ public function createNotification($topic, array $options = []) } /** * Lazily instantiates a notification. There are no network requests made at - * this point. To see the operations that can be performed on a notification - * please see {@see Google\Cloud\Storage\Notification}. + * this point. + * + * To see the operations that can be performed on a notification + * please see {@see Notification}. * * Example: * ``` @@ -817,6 +833,8 @@ public function delete(array $options = []) * Buckets can have either StorageClass OLM rules or Autoclass, * but not both. When Autoclass is enabled on a bucket, adding * StorageClass OLM rules will result in failure. + * For more information, refer to + * [Storage Autoclass](https://cloud.google.com/storage/docs/autoclass) * @type array $versioning The bucket's versioning configuration. * @type array $website The bucket's website configuration. * @type array $billing The bucket's billing configuration. @@ -839,7 +857,7 @@ public function delete(array $options = []) * occurs, signified by the hold's release. * @type array $retentionPolicy Defines the retention policy for a * bucket. In order to lock a retention policy, please see - * {@see Google\Cloud\Storage\Bucket::lockRetentionPolicy()}. + * {@see Bucket::lockRetentionPolicy()}. * @type int $retentionPolicy.retentionPeriod Specifies the duration * that objects need to be retained, in seconds. Retention * duration must be greater than zero and less than 100 years. @@ -1019,8 +1037,8 @@ public function name() * replace the configuration with the rules provided by this builder. * * This builder is intended to be used in tandem with - * {@see Google\Cloud\Storage\StorageClient::createBucket()} and - * {@see Google\Cloud\Storage\Bucket::update()}. + * {@see StorageClient::createBucket()} and + * {@see Bucket::update()}. * * Example: * ``` @@ -1049,13 +1067,15 @@ public static function lifecycle(array $lifecycle = []) } /** * Retrieves a lifecycle builder preconfigured with the lifecycle rules that - * already exists on the bucket. Use this if you want to make updates to an + * already exists on the bucket. + * + * Use this if you want to make updates to an * existing configuration without removing existing rules, as would be the - * case when using {@see Google\Cloud\Storage\Bucket::lifecycle()}. + * case when using {@see Bucket::lifecycle()}. * * This builder is intended to be used in tandem with - * {@see Google\Cloud\Storage\StorageClient::createBucket()} and - * {@see Google\Cloud\Storage\Bucket::update()}. + * {@see StorageClient::createBucket()} and + * {@see Bucket::update()}. * * Please note, this method may trigger a network request in order to fetch * the existing lifecycle rules from the server. @@ -1158,8 +1178,8 @@ public function iam() * metageneration value will need to be available. It can either be supplied * explicitly through the `ifMetagenerationMatch` option or detected for you * by ensuring a value is cached locally (by calling - * {@see Google\Cloud\Storage\Bucket::reload()} or - * {@see Google\Cloud\Storage\Bucket::info()}, for example). + * {@see Bucket::reload()} or + * {@see Bucket::info()}, for example). * * Example: * ``` @@ -1222,7 +1242,7 @@ public function lockRetentionPolicy(array $options = []) * @see https://cloud.google.com/storage/docs/access-control/signed-urls Signed URLs * * @param Timestamp|\DateTimeInterface|int $expires Specifies when the URL - * will expire. May provide an instance of {@see Google\Cloud\Core\Timestamp}, + * will expire. May provide an instance of {@see \Google\Cloud\Core\Timestamp}, * [http://php.net/datetimeimmutable](`\DateTimeImmutable`), or a * UNIX timestamp as an integer. * @param array $options { @@ -1315,7 +1335,7 @@ public function signedUrl($expires, array $options = []) * @param string $objectName The path to the file in Google Cloud Storage, * relative to the bucket. * @param Timestamp|\DateTimeInterface|int $expires Specifies when the URL - * will expire. May provide an instance of {@see Google\Cloud\Core\Timestamp}, + * will expire. May provide an instance of {@see \Google\Cloud\Core\Timestamp}, * [http://php.net/datetimeimmutable](`\DateTimeImmutable`), or a * UNIX timestamp as an integer. * @param array $options [optional] { diff --git a/vendor/Gcp/google/cloud-storage/src/Connection/ConnectionInterface.php b/vendor/Gcp/google/cloud-storage/src/Connection/ConnectionInterface.php index f441e3d4..4c5ea633 100644 --- a/vendor/Gcp/google/cloud-storage/src/Connection/ConnectionInterface.php +++ b/vendor/Gcp/google/cloud-storage/src/Connection/ConnectionInterface.php @@ -20,6 +20,8 @@ /** * Represents a connection to * [Cloud Storage](https://cloud.google.com/storage/). + * + * @internal */ interface ConnectionInterface { diff --git a/vendor/Gcp/google/cloud-storage/src/Connection/IamBucket.php b/vendor/Gcp/google/cloud-storage/src/Connection/IamBucket.php index 012d479b..b09200ea 100644 --- a/vendor/Gcp/google/cloud-storage/src/Connection/IamBucket.php +++ b/vendor/Gcp/google/cloud-storage/src/Connection/IamBucket.php @@ -20,6 +20,8 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Iam\IamConnectionInterface; /** * IAM Implementation for GCS Buckets + * + * @internal */ class IamBucket implements IamConnectionInterface { diff --git a/vendor/Gcp/google/cloud-storage/src/Connection/Rest.php b/vendor/Gcp/google/cloud-storage/src/Connection/Rest.php index 5432440b..d15044f1 100644 --- a/vendor/Gcp/google/cloud-storage/src/Connection/Rest.php +++ b/vendor/Gcp/google/cloud-storage/src/Connection/Rest.php @@ -17,6 +17,7 @@ */ namespace DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Storage\Connection; +use DeliciousBrains\WP_Offload_Media\Gcp\Google\Auth\GetUniverseDomainInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\RequestBuilder; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\RequestWrapper; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\RestTrait; @@ -29,8 +30,6 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\UriTrait; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Storage\Connection\ConnectionInterface; use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Storage\StorageClient; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\CRC32\Builtin; -use DeliciousBrains\WP_Offload_Media\Gcp\Google\CRC32\CRC32; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Exception\RequestException; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\MimeType; use DeliciousBrains\WP_Offload_Media\Gcp\GuzzleHttp\Psr7\Request; @@ -42,6 +41,8 @@ /** * Implementation of the * [Google Cloud Storage JSON API](https://cloud.google.com/storage/docs/json_api/). + * + * @internal */ class Rest implements ConnectionInterface { @@ -60,7 +61,11 @@ class Rest implements ConnectionInterface * @deprecated */ const BASE_URI = 'https://storage.googleapis.com/storage/v1/'; + /** + * @deprecated + */ const DEFAULT_API_ENDPOINT = 'https://storage.googleapis.com'; + const DEFAULT_API_ENDPOINT_TEMPLATE = 'https://storage.UNIVERSE_DOMAIN'; /** * @deprecated */ @@ -92,12 +97,15 @@ public function __construct(array $config = []) $config += [ 'serviceDefinitionPath' => __DIR__ . '/ServiceDefinition/storage-v1.json', 'componentVersion' => StorageClient::VERSION, - 'apiEndpoint' => self::DEFAULT_API_ENDPOINT, + 'apiEndpoint' => null, + // If the user has not supplied a universe domain, use the environment variable if set. + // Otherwise, use the default ("googleapis.com"). + 'universeDomain' => \getenv('GOOGLE_CLOUD_UNIVERSE_DOMAIN') ?: GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN, // Cloud Storage needs to provide a default scope because the Storage // API does not accept JWTs with "audience" 'scopes' => StorageClient::FULL_CONTROL_SCOPE, ]; - $this->apiEndpoint = $this->getApiEndpoint(self::DEFAULT_API_ENDPOINT, $config); + $this->apiEndpoint = $this->getApiEndpoint(null, $config, self::DEFAULT_API_ENDPOINT_TEMPLATE); $this->setRequestWrapper(new RequestWrapper($config)); $this->setRequestBuilder(new RequestBuilder($config['serviceDefinitionPath'], $this->apiEndpoint)); $this->projectId = $this->pluck('projectId', $config, \false); @@ -336,6 +344,12 @@ private function resolveUploadOptions(array $args) $args['metadata']['crc32c'] = $this->crcFromStream($args['data']); } $args['metadata']['name'] = $args['name']; + if (isset($args['retention'])) { + // during object creation retention properties go into metadata + // but not into request body + $args['metadata']['retention'] = $args['retention']; + unset($args['retention']); + } unset($args['name']); $args['contentType'] = $args['metadata']['contentType'] ?? MimeType::fromFilename($args['metadata']['name']); $uploaderOptionKeys = ['restOptions', 'retries', 'requestTimeout', 'chunkSize', 'contentType', 'metadata', 'uploadProgressCallback', 'restDelayFunction', 'restCalcDelayFunction']; @@ -496,16 +510,15 @@ private function chooseValidationMethod(array $args) private function crcFromStream(StreamInterface $data) { $pos = $data->tell(); - if ($pos > 0) { - $data->rewind(); - } - $crc32c = CRC32::create(CRC32::CASTAGNOLI); $data->rewind(); + $crc32c = \hash_init('crc32c'); while (!$data->eof()) { - $crc32c->update($data->read(1048576)); + $buffer = $data->read(1048576); + \hash_update($crc32c, $buffer); } $data->seek($pos); - return \base64_encode($crc32c->hash(\true)); + $hash = \hash_final($crc32c, \true); + return \base64_encode($hash); } /** * Check if the crc32c extension is available. @@ -521,13 +534,12 @@ protected function crc32cExtensionLoaded() /** * Check if hash() supports crc32c. * - * Protected access for unit testing. - * + * @deprecated * @return bool */ protected function supportsBuiltinCrc32c() { - return Builtin::supports(CRC32::CASTAGNOLI); + return \extension_loaded('hash') && \in_array('crc32c', \hash_algos()); } /** * Add the required retry function and send the request. diff --git a/vendor/Gcp/google/cloud-storage/src/Connection/ServiceDefinition/storage-v1.json b/vendor/Gcp/google/cloud-storage/src/Connection/ServiceDefinition/storage-v1.json index c36fb588..25303d3b 100644 --- a/vendor/Gcp/google/cloud-storage/src/Connection/ServiceDefinition/storage-v1.json +++ b/vendor/Gcp/google/cloud-storage/src/Connection/ServiceDefinition/storage-v1.json @@ -363,6 +363,15 @@ "type": "string", "description": "A date and time in RFC 3339 format representing the instant at which \"enabled\" was last toggled.", "format": "date-time" + }, + "terminalStorageClass": { + "type": "string", + "description": "The storage class that objects in the bucket eventually transition to if they are not read for a certain length of time. Valid values are NEARLINE and ARCHIVE." + }, + "terminalStorageClassUpdateTime": { + "type": "string", + "description": "A date and time in RFC 3339 format representing the time of the most recent update to \"terminalStorageClass\".", + "format": "date-time" } } }, @@ -441,6 +450,16 @@ } } }, + "objectRetention": { + "type": "object", + "description": "The bucket's object retention config.", + "properties": { + "mode": { + "type": "string", + "description": "The bucket's object retention mode. Can be Enabled." + } + } + }, "rpo": { "type": "string", "description": "The Recovery Point Objective (RPO) of this bucket. Set to ASYNC_TURBO to turn on Turbo Replication on a bucket." @@ -449,6 +468,22 @@ "type": "string", "description": "The URI of this bucket." }, + "softDeletePolicy": { + "type": "object", + "description": "The bucket's soft delete policy, which defines the period of time that soft-deleted objects will be retained, and cannot be permanently deleted.", + "properties": { + "retentionDurationSeconds": { + "type": "string", + "description": "The duration in seconds that soft-deleted objects in the bucket will be retained and cannot be permanently deleted.", + "format": "int64" + }, + "effectiveTime": { + "type": "string", + "description": "Server-determined value that indicates the time from which the policy, or one with a greater retention, was effective. This value is in RFC 3339 format.", + "format": "date-time" + } + } + }, "storageClass": { "type": "string", "description": "The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE, and DURABLE_REDUCED_AVAILABILITY. If this value is not specified when the bucket is created, it will default to STANDARD. For more information, see storage classes." @@ -493,6 +528,84 @@ } } }, + "AnywhereCache": { + "id": "AnywhereCache", + "type": "object", + "description": "An Anywhere Cache instance.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of item this is. For Anywhere Cache, this is always storage#anywhereCache.", + "default": "storage#anywhereCache" + }, + "id": { + "type": "string", + "description": "The ID of the resource, including the project number, bucket name and anywhere cache ID." + }, + "selfLink": { + "type": "string", + "description": "The link to this cache instance." + }, + "bucket": { + "type": "string", + "description": "The name of the bucket containing this cache instance." + }, + "anywhereCacheId": { + "type": "string", + "description": "The ID of the Anywhere cache instance." + }, + "state": { + "type": "string", + "description": "The current state of the cache instance." + }, + "createTime": { + "type": "string", + "description": "The creation time of the cache instance in RFC 3339 format.", + "format": "date-time" + }, + "updateTime": { + "type": "string", + "description": "The modification time of the cache instance metadata in RFC 3339 format.", + "format": "date-time" + }, + "ttl": { + "type": "string", + "description": "The TTL of all cache entries in whole seconds. e.g., \"7200s\". ", + "format": "google-duration" + }, + "admissionPolicy": { + "type": "string", + "description": "The cache-level entry admission policy." + }, + "pendingUpdate": { + "type": "boolean", + "description": "True if the cache instance has an active Update long-running operation." + } + } + }, + "AnywhereCaches": { + "id": "AnywhereCaches", + "type": "object", + "description": "A list of Anywhere Caches.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of item this is. For lists of Anywhere Caches, this is always storage#anywhereCaches.", + "default": "storage#anywhereCaches" + }, + "nextPageToken": { + "type": "string", + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." + }, + "items": { + "type": "array", + "description": "The list of items.", + "items": { + "$ref": "AnywhereCache" + } + } + } + }, "BucketAccessControl": { "id": "BucketAccessControl", "type": "object", @@ -738,6 +851,86 @@ } } }, + "GoogleLongrunningOperation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "GoogleLongrunningOperation", + "properties": { + "done": { + "description": "If the value is \"false\", it means the operation is still in progress. If \"true\", the operation is completed, and either \"error\" or \"response\" is available.", + "type": "boolean" + }, + "error": { + "$ref": "GoogleRpcStatus", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the \"name\" should be a resource name ending with \"operations/{operationId}\".", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as \"Delete\", the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type \"XxxResponse\", where \"Xxx\" is the original method name. For example, if the original method name is \"TakeSnapshot()\", the inferred response type is \"TakeSnapshotResponse\".", + "type": "object" + } + }, + "type": "object" + }, + "GoogleLongrunningListOperationsResponse": { + "description": "The response message for storage.buckets.operations.list.", + "id": "GoogleLongrunningListOperationsResponse", + "properties": { + "nextPageToken": { + "type": "string", + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "GoogleLongrunningOperation" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleRpcStatus": { + "description": "The \"Status\" type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each \"Status\" message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "GoogleRpcStatus", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English.", + "type": "string" + } + }, + "type": "object" + }, "HmacKey": { "id": "HmacKey", "type": "object", @@ -831,6 +1024,72 @@ } } }, + "ManagedFolder": { + "id": "ManagedFolder", + "type": "object", + "description": "A managed folder.", + "properties": { + "bucket": { + "type": "string", + "description": "The name of the bucket containing this managed folder." + }, + "id": { + "type": "string", + "description": "The ID of the managed folder, including the bucket name and managed folder name." + }, + "kind": { + "type": "string", + "description": "The kind of item this is. For managed folders, this is always storage#managedFolder.", + "default": "storage#managedFolder" + }, + "metageneration": { + "type": "string", + "description": "The version of the metadata for this managed folder. Used for preconditions and for detecting changes in metadata.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "The name of the managed folder. Required if not specified by URL parameter." + }, + "selfLink": { + "type": "string", + "description": "The link to this managed folder." + }, + "createTime": { + "type": "string", + "description": "The creation time of the managed folder in RFC 3339 format.", + "format": "date-time" + }, + "updateTime": { + "type": "string", + "description": "The last update time of the managed folder metadata in RFC 3339 format.", + "format": "date-time" + } + } + }, + "ManagedFolders": { + "id": "ManagedFolders", + "type": "object", + "description": "A list of managed folders.", + "properties": { + "items": { + "type": "array", + "description": "The list of items.", + "items": { + "$ref": "ManagedFolder" + } + }, + "kind": { + "type": "string", + "description": "The kind of item this is. For lists of managed folders, this is always storage#managedFolders.", + "default": "storage#managedFolders" + }, + "nextPageToken": { + "type": "string", + "description": "The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results." + } + } + }, "Notification": { "id": "Notification", "type": "object", @@ -1050,6 +1309,21 @@ "description": "A server-determined value that specifies the earliest time that the object's retention period expires. This value is in RFC 3339 format. Note 1: This field is not provided for objects with an active event-based hold, since retention expiration is unknown until the hold is removed. Note 2: This value can be provided even when temporary hold is set (so that the user can reason about policy without having to first unset the temporary hold).", "format": "date-time" }, + "retention": { + "type": "object", + "description": "A collection of object level retention parameters.", + "properties": { + "retainUntilTime": { + "type": "string", + "description": "A time in RFC 3339 format until which object retention protects this object.", + "format": "date-time" + }, + "mode": { + "type": "string", + "description": "The bucket's object retention mode, can only be Unlocked or Locked." + } + } + }, "selfLink": { "type": "string", "description": "The link to this object." @@ -1074,7 +1348,17 @@ }, "timeDeleted": { "type": "string", - "description": "The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", + "description": "The time at which the object became noncurrent in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.", + "format": "date-time" + }, + "softDeleteTime": { + "type": "string", + "description": "The time at which the object became soft-deleted in RFC 3339 format.", + "format": "date-time" + }, + "hardDeleteTime": { + "type": "string", + "description": "This is the time (in the future) when the soft-deleted object will no longer be restorable. It is equal to the soft delete time plus the current soft delete retention duration of the bucket.", "format": "date-time" }, "timeStorageClassUpdated": { @@ -1224,7 +1508,7 @@ "Policy": { "id": "Policy", "type": "object", - "description": "A bucket/object IAM policy.", + "description": "A bucket/object/managedFolder IAM policy.", "properties": { "bindings": { "type": "array", @@ -1245,7 +1529,8 @@ "annotations": { "required": [ "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" + "storage.objects.setIamPolicy", + "storage.managedFolders.setIamPolicy" ] } }, @@ -1255,7 +1540,8 @@ "annotations": { "required": [ "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" + "storage.objects.setIamPolicy", + "storage.managedFolders.setIamPolicy" ] } } @@ -1264,7 +1550,8 @@ "annotations": { "required": [ "storage.buckets.setIamPolicy", - "storage.objects.setIamPolicy" + "storage.objects.setIamPolicy", + "storage.managedFolders.setIamPolicy" ] } }, @@ -1280,7 +1567,7 @@ }, "resourceId": { "type": "string", - "description": "The ID of the resource to which this policy belongs. Will be of the form projects/_/buckets/bucket for buckets, and projects/_/buckets/bucket/objects/object for objects. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input." + "description": "The ID of the resource to which this policy belongs. Will be of the form projects/_/buckets/bucket for buckets, projects/_/buckets/bucket/objects/object for objects, and projects/_/buckets/bucket/managedFolders/managedFolder. A specific generation may be specified by appending #generationNumber to the end of the object name, e.g. projects/_/buckets/my-bucket/objects/data.txt#17. The current generation can be denoted with #0. This field is ignored on input." }, "version": { "type": "integer", @@ -1342,7 +1629,7 @@ "TestIamPermissionsResponse": { "id": "TestIamPermissionsResponse", "type": "object", - "description": "A storage.(buckets|objects).testIamPermissions response.", + "description": "A storage.(buckets|objects|managedFolders).testIamPermissions response.", "properties": { "kind": { "type": "string", @@ -1351,117 +1638,385 @@ }, "permissions": { "type": "array", - "description": "The permissions held by the caller. Permissions are always of the format storage.resource.capability, where resource is one of buckets or objects. The supported permissions are as follows: \n- storage.buckets.delete \u2014 Delete bucket. \n- storage.buckets.get \u2014 Read bucket metadata. \n- storage.buckets.getIamPolicy \u2014 Read bucket IAM policy. \n- storage.buckets.create \u2014 Create bucket. \n- storage.buckets.list \u2014 List buckets. \n- storage.buckets.setIamPolicy \u2014 Update bucket IAM policy. \n- storage.buckets.update \u2014 Update bucket metadata. \n- storage.objects.delete \u2014 Delete object. \n- storage.objects.get \u2014 Read object data and metadata. \n- storage.objects.getIamPolicy \u2014 Read object IAM policy. \n- storage.objects.create \u2014 Create object. \n- storage.objects.list \u2014 List objects. \n- storage.objects.setIamPolicy \u2014 Update object IAM policy. \n- storage.objects.update \u2014 Update object metadata.", + "description": "The permissions held by the caller. Permissions are always of the format storage.resource.capability, where resource is one of buckets, objects, or managedFolders. The supported permissions are as follows: \n- storage.buckets.delete \u2014 Delete bucket. \n- storage.buckets.get \u2014 Read bucket metadata. \n- storage.buckets.getIamPolicy \u2014 Read bucket IAM policy. \n- storage.buckets.create \u2014 Create bucket. \n- storage.buckets.list \u2014 List buckets. \n- storage.buckets.setIamPolicy \u2014 Update bucket IAM policy. \n- storage.buckets.update \u2014 Update bucket metadata. \n- storage.objects.delete \u2014 Delete object. \n- storage.objects.get \u2014 Read object data and metadata. \n- storage.objects.getIamPolicy \u2014 Read object IAM policy. \n- storage.objects.create \u2014 Create object. \n- storage.objects.list \u2014 List objects. \n- storage.objects.setIamPolicy \u2014 Update object IAM policy. \n- storage.objects.update \u2014 Update object metadata. \n- storage.managedFolders.delete \u2014 Delete managed folder. \n- storage.managedFolders.get \u2014 Read managed folder metadata. \n- storage.managedFolders.getIamPolicy \u2014 Read managed folder IAM policy. \n- storage.managedFolders.create \u2014 Create managed folder. \n- storage.managedFolders.list \u2014 List managed folders. \n- storage.managedFolders.setIamPolicy \u2014 Update managed folder IAM policy.", + "items": { + "type": "string" + } + } + } + }, + "BulkRestoreObjectsRequest": { + "id": "BulkRestoreObjectsRequest", + "type": "object", + "description": "A bulk restore objects request.", + "properties": { + "allowOverwrite": { + "type": "boolean", + "description": "If false (default), the restore will not overwrite live objects with the same name at the destination. This means some deleted objects may be skipped. If true, live objects will be overwritten resulting in a noncurrent object (if versioning is enabled). If versioning is not enabled, overwriting the object will result in a soft-deleted object. In either case, if a noncurrent object already exists with the same name, a live version can be written without issue." + }, + "softDeletedAfterTime": { + "type": "string", + "description": "Restores only the objects that were soft-deleted after this time.", + "format": "date-time" + }, + "softDeletedBeforeTime": { + "type": "string", + "description": "Restores only the objects that were soft-deleted before this time.", + "format": "date-time" + }, + "matchGlobs": { + "type": "array", + "description": "Restores only the objects matching any of the specified glob(s). If this parameter is not specified, all objects will be restored within the specified time range.", "items": { "type": "string" } + }, + "copySourceAcl": { + "type": "boolean", + "description": "If true, copies the source object's ACL; otherwise, uses the bucket's default object ACL. The default is false." } } } }, "resources": { - "bucketAccessControls": { + "anywhereCache": { "methods": { - "delete": { - "id": "storage.bucketAccessControls.delete", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", + "insert": { + "id": "storage.anywhereCaches.insert", + "path": "b/{bucket}/anywhereCaches", + "httpMethod": "POST", + "description": "Creates an Anywhere Cache instance.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", - "required": true, - "location": "path" - }, - "entity": { - "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "Name of the partent bucket", "required": true, "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" } }, "parameterOrder": [ - "bucket", - "entity" + "bucket" ], + "request": { + "$ref": "AnywhereCache" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" ] }, - "get": { - "id": "storage.bucketAccessControls.get", - "path": "b/{bucket}/acl/{entity}", - "httpMethod": "GET", - "description": "Returns the ACL entry for the specified entity on the specified bucket.", + "update": { + "id": "storage.anywhereCaches.update", + "path": "b/{bucket}/anywhereCaches/{anywhereCacheId}", + "httpMethod": "PATCH", + "description": "Updates the config(ttl and admissionPolicy) of an Anywhere Cache instance.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the partent bucket", "required": true, "location": "path" }, - "entity": { + "anywhereCacheId": { "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "The ID of requested Anywhere Cache instance.", "required": true, "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" } }, "parameterOrder": [ "bucket", - "entity" + "anywhereCacheId" ], + "request": { + "$ref": "AnywhereCache" + }, "response": { - "$ref": "BucketAccessControl" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" ] }, - "insert": { - "id": "storage.bucketAccessControls.insert", - "path": "b/{bucket}/acl", - "httpMethod": "POST", - "description": "Creates a new ACL entry on the specified bucket.", + "get": { + "id": "storage.anywhereCaches.get", + "path": "b/{bucket}/anywhereCaches/{anywhereCacheId}", + "httpMethod": "GET", + "description": "Returns the metadata of an Anywhere Cache instance.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the partent bucket", "required": true, "location": "path" }, - "userProject": { + "anywhereCacheId": { "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" + "description": "The ID of requested Anywhere Cache instance.", + "required": true, + "location": "path" } }, "parameterOrder": [ - "bucket" + "bucket", + "anywhereCacheId" ], - "request": { - "$ref": "BucketAccessControl" - }, "response": { - "$ref": "BucketAccessControl" + "$ref": "AnywhereCache" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" - ] + "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_write" + ] + }, + "list": { + "id": "storage.anywhereCaches.list", + "path": "b/{bucket}/anywhereCache", + "httpMethod": "GET", + "description": "Returns a list of Anywhere Cache instances of the bucket matching the criteria.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the partent bucket", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "Maximum number of items return in a single page of responses. Maximum 1000.", + "format": "int32", + "minimum": "0", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket" + ], + "response": { + "$ref": "AnywhereCaches" + }, + "scopes": [ + "https://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_write" + ] + }, + "pause": { + "id": "storage.anywhereCaches.pause", + "path": "b/{bucket}/anywhereCaches/{anywhereCacheId}/pause", + "httpMethod": "POST", + "description": "Pauses an Anywhere Cache instance.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the partent bucket", + "required": true, + "location": "path" + }, + "anywhereCacheId": { + "type": "string", + "description": "The ID of requested Anywhere Cache instance.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "bucket", + "anywhereCacheId" + ], + "response": { + "$ref": "AnywhereCache" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "resume": { + "id": "storage.anywhereCaches.resume", + "path": "b/{bucket}/anywhereCaches/{anywhereCacheId}/resume", + "httpMethod": "POST", + "description": "Resumes a paused or disabled Anywhere Cache instance.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the partent bucket", + "required": true, + "location": "path" + }, + "anywhereCacheId": { + "type": "string", + "description": "The ID of requested Anywhere Cache instance.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "bucket", + "anywhereCacheId" + ], + "response": { + "$ref": "AnywhereCache" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "disable": { + "id": "storage.anywhereCaches.disable", + "path": "b/{bucket}/anywhereCaches/{anywhereCacheId}/disable", + "httpMethod": "POST", + "description": "Disables an Anywhere Cache instance.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the partent bucket", + "required": true, + "location": "path" + }, + "anywhereCacheId": { + "type": "string", + "description": "The ID of requested Anywhere Cache instance.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "bucket", + "anywhereCacheId" + ], + "response": { + "$ref": "AnywhereCache" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "bucketAccessControls": { + "methods": { + "delete": { + "id": "storage.bucketAccessControls.delete", + "path": "b/{bucket}/acl/{entity}", + "httpMethod": "DELETE", + "description": "Permanently deletes the ACL entry for the specified entity on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "id": "storage.bucketAccessControls.get", + "path": "b/{bucket}/acl/{entity}", + "httpMethod": "GET", + "description": "Returns the ACL entry for the specified entity on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "id": "storage.bucketAccessControls.insert", + "path": "b/{bucket}/acl", + "httpMethod": "POST", + "description": "Creates a new ACL entry on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket" + ], + "request": { + "$ref": "BucketAccessControl" + }, + "response": { + "$ref": "BucketAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] }, "list": { "id": "storage.bucketAccessControls.list", @@ -1775,6 +2330,12 @@ "type": "string", "description": "The project to be billed for this request.", "location": "query" + }, + "enableObjectRetention": { + "type": "boolean", + "description": "When set to true, object retention is enabled for this bucket.", + "default": "false", + "location": "query" } }, "parameterOrder": [ @@ -2161,77 +2722,473 @@ } } }, - "channels": { + "operations": { "methods": { - "stop": { - "id": "storage.channels.stop", - "path": "channels/stop", + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed.", + "path": "b/{bucket}/operations/{operationId}/cancel", "httpMethod": "POST", - "description": "Stop watching resources through this channel", - "request": { - "$ref": "Channel", - "parameterName": "resource" + "id": "storage.buckets.operations.cancel", + "parameterOrder": [ + "bucket", + "operationId" + ], + "parameters": { + "bucket": { + "description": "The parent bucket of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationId": { + "description": "The ID of the operation resource.", + "location": "path", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation.", + "path": "b/{bucket}/operations/{operationId}", + "httpMethod": "GET", + "id": "storage.buckets.operations.get", + "parameterOrder": [ + "bucket", + "operationId" + ], + "parameters": { + "bucket": { + "description": "The parent bucket of the operation resource.", + "location": "path", + "required": true, + "type": "string" + }, + "operationId": { + "description": "The ID of the operation resource.", + "location": "path", + "required": true, + "type": "string" + } + }, + "response": { + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", + "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_write" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request.", + "path": "b/{bucket}/operations", + "httpMethod": "GET", + "id": "storage.buckets.operations.list", + "parameterOrder": [ + "bucket" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "bucket": { + "description": "Name of the bucket in which to look for operations.", + "location": "path", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "Maximum number of items to return in a single page of responses. Fewer total results may be returned than requested. The service uses this parameter or 100 items, whichever is smaller.", + "minimum": "0", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A previously-returned page token representing part of the larger set of results to view.", + "location": "query", + "type": "string" + } + }, + "response": { + "$ref": "GoogleLongrunningListOperationsResponse" + }, + "scopes": [ + "https://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_write" + ] + } + } + }, + "channels": { + "methods": { + "stop": { + "id": "storage.channels.stop", + "path": "channels/stop", + "httpMethod": "POST", + "description": "Stop watching resources through this channel", + "request": { + "$ref": "Channel", + "parameterName": "resource" + }, + "scopes": [ + "https://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_write" + ] + } + } + }, + "defaultObjectAccessControls": { + "methods": { + "delete": { + "id": "storage.defaultObjectAccessControls.delete", + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "httpMethod": "DELETE", + "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "get": { + "id": "storage.defaultObjectAccessControls.get", + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "httpMethod": "GET", + "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "insert": { + "id": "storage.defaultObjectAccessControls.insert", + "path": "b/{bucket}/defaultObjectAcl", + "httpMethod": "POST", + "description": "Creates a new default object ACL entry on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket" + ], + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "list": { + "id": "storage.defaultObjectAccessControls.list", + "path": "b/{bucket}/defaultObjectAcl", + "httpMethod": "GET", + "description": "Retrieves default object ACL entries on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "ifMetagenerationMatch": { + "type": "string", + "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", + "format": "int64", + "location": "query" + }, + "ifMetagenerationNotMatch": { + "type": "string", + "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", + "format": "int64", + "location": "query" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket" + ], + "response": { + "$ref": "ObjectAccessControls" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "patch": { + "id": "storage.defaultObjectAccessControls.patch", + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "httpMethod": "PATCH", + "description": "Patches a default object ACL entry on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "update": { + "id": "storage.defaultObjectAccessControls.update", + "path": "b/{bucket}/defaultObjectAcl/{entity}", + "httpMethod": "PUT", + "description": "Updates a default object ACL entry on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of a bucket.", + "required": true, + "location": "path" + }, + "entity": { + "type": "string", + "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "required": true, + "location": "path" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "entity" + ], + "request": { + "$ref": "ObjectAccessControl" + }, + "response": { + "$ref": "ObjectAccessControl" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + } + } + }, + "managedFolders": { + "methods": { + "delete": { + "id": "storage.managedFolders.delete", + "path": "b/{bucket}/managedFolders/{managedFolder}", + "httpMethod": "DELETE", + "description": "Permanently deletes a managed folder.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the bucket containing the managed folder.", + "required": true, + "location": "path" + }, + "managedFolder": { + "type": "string", + "description": "The managed folder name/path.", + "required": true, + "location": "path" + }, + "ifMetagenerationMatch": { + "type": "string", + "description": "If set, only deletes the managed folder if its metageneration matches this value.", + "format": "int64", + "location": "query" + }, + "ifMetagenerationNotMatch": { + "type": "string", + "description": "If set, only deletes the managed folder if its metageneration does not match this value.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "managedFolder" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_only", "https://www.googleapis.com/auth/devstorage.read_write" ] - } - } - }, - "defaultObjectAccessControls": { - "methods": { - "delete": { - "id": "storage.defaultObjectAccessControls.delete", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "DELETE", - "description": "Permanently deletes the default object ACL entry for the specified entity on the specified bucket.", + }, + "get": { + "id": "storage.managedFolders.get", + "path": "b/{bucket}/managedFolders/{managedFolder}", + "httpMethod": "GET", + "description": "Returns metadata of the specified managed folder.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" }, - "entity": { + "managedFolder": { "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "The managed folder name/path.", "required": true, "location": "path" }, - "userProject": { + "ifMetagenerationMatch": { "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "description": "Makes the return of the managed folder metadata conditional on whether the managed folder's current metageneration matches the given value.", + "format": "int64", + "location": "query" + }, + "ifMetagenerationNotMatch": { + "type": "string", + "description": "Makes the return of the managed folder metadata conditional on whether the managed folder's current metageneration does not match the given value.", + "format": "int64", "location": "query" } }, "parameterOrder": [ "bucket", - "entity" + "managedFolder" ], + "response": { + "$ref": "ManagedFolder" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "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_write" ] }, - "get": { - "id": "storage.defaultObjectAccessControls.get", - "path": "b/{bucket}/defaultObjectAcl/{entity}", + "getIamPolicy": { + "id": "storage.managedFolders.getIamPolicy", + "path": "b/{bucket}/managedFolders/{managedFolder}/iam", "httpMethod": "GET", - "description": "Returns the default object ACL entry for the specified entity on the specified bucket.", + "description": "Returns an IAM policy for the specified managed folder.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" }, - "entity": { + "optionsRequestedPolicyVersion": { + "type": "integer", + "description": "The IAM policy format version to be returned. If the optionsRequestedPolicyVersion is for an older version that doesn't support part of the requested IAM policy, the request fails.", + "format": "int32", + "minimum": "1", + "location": "query" + }, + "managedFolder": { "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "The managed folder name/path.", "required": true, "location": "path" }, @@ -2243,75 +3200,74 @@ }, "parameterOrder": [ "bucket", - "entity" + "managedFolder" ], "response": { - "$ref": "ObjectAccessControl" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "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_write" ] }, "insert": { - "id": "storage.defaultObjectAccessControls.insert", - "path": "b/{bucket}/defaultObjectAcl", + "id": "storage.managedFolders.insert", + "path": "b/{bucket}/managedFolders", "httpMethod": "POST", - "description": "Creates a new default object ACL entry on the specified bucket.", + "description": "Creates a new managed folder.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" - }, - "userProject": { - "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", - "location": "query" } }, "parameterOrder": [ "bucket" ], "request": { - "$ref": "ObjectAccessControl" + "$ref": "ManagedFolder" }, "response": { - "$ref": "ObjectAccessControl" + "$ref": "ManagedFolder" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" ] }, "list": { - "id": "storage.defaultObjectAccessControls.list", - "path": "b/{bucket}/defaultObjectAcl", + "id": "storage.managedFolders.list", + "path": "b/{bucket}/managedFolders", "httpMethod": "GET", - "description": "Retrieves default object ACL entries on the specified bucket.", + "description": "Lists managed folders in the given bucket.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" }, - "ifMetagenerationMatch": { - "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration matches this value.", - "format": "int64", + "pageSize": { + "type": "integer", + "description": "Maximum number of items return in a single page of responses.", + "format": "int32", + "minimum": "0", "location": "query" }, - "ifMetagenerationNotMatch": { + "pageToken": { "type": "string", - "description": "If present, only return default ACL listing if the bucket's current metageneration does not match the given value.", - "format": "int64", + "description": "A previously-returned page token representing part of the larger set of results to view.", "location": "query" }, - "userProject": { + "prefix": { "type": "string", - "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "description": "The managed folder name/path prefix to filter the output list of results.", "location": "query" } }, @@ -2319,28 +3275,31 @@ "bucket" ], "response": { - "$ref": "ObjectAccessControls" + "$ref": "ManagedFolders" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "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_write" ] }, - "patch": { - "id": "storage.defaultObjectAccessControls.patch", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PATCH", - "description": "Patches a default object ACL entry on the specified bucket.", + "setIamPolicy": { + "id": "storage.managedFolders.setIamPolicy", + "path": "b/{bucket}/managedFolders/{managedFolder}/iam", + "httpMethod": "PUT", + "description": "Updates an IAM policy for the specified managed folder.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" }, - "entity": { + "managedFolder": { "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "The managed folder name/path.", "required": true, "location": "path" }, @@ -2352,37 +3311,44 @@ }, "parameterOrder": [ "bucket", - "entity" + "managedFolder" ], "request": { - "$ref": "ObjectAccessControl" + "$ref": "Policy" }, "response": { - "$ref": "ObjectAccessControl" + "$ref": "Policy" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/devstorage.full_control" ] }, - "update": { - "id": "storage.defaultObjectAccessControls.update", - "path": "b/{bucket}/defaultObjectAcl/{entity}", - "httpMethod": "PUT", - "description": "Updates a default object ACL entry on the specified bucket.", + "testIamPermissions": { + "id": "storage.managedFolders.testIamPermissions", + "path": "b/{bucket}/managedFolders/{managedFolder}/iam/testPermissions", + "httpMethod": "GET", + "description": "Tests a set of permissions on the given managed folder to see which, if any, are held by the caller.", "parameters": { "bucket": { "type": "string", - "description": "Name of a bucket.", + "description": "Name of the bucket containing the managed folder.", "required": true, "location": "path" }, - "entity": { + "managedFolder": { "type": "string", - "description": "The entity holding the permission. Can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.", + "description": "The managed folder name/path.", "required": true, "location": "path" }, + "permissions": { + "type": "string", + "description": "Permissions to test.", + "required": true, + "repeated": true, + "location": "query" + }, "userProject": { "type": "string", "description": "The project to be billed for this request. Required for Requester Pays buckets.", @@ -2391,17 +3357,18 @@ }, "parameterOrder": [ "bucket", - "entity" + "managedFolder", + "permissions" ], - "request": { - "$ref": "ObjectAccessControl" - }, "response": { - "$ref": "ObjectAccessControl" + "$ref": "TestIamPermissionsResponse" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control" + "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_write" ] } } @@ -2576,7 +3543,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2622,7 +3589,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2665,7 +3632,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2710,7 +3677,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2758,7 +3725,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2810,7 +3777,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2854,7 +3821,7 @@ }, "destinationObject": { "type": "string", - "description": "Name of the new object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the new object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -2926,7 +3893,7 @@ "parameters": { "destinationBucket": { "type": "string", - "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3037,7 +4004,7 @@ }, "sourceObject": { "type": "string", - "description": "Name of the source object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the source object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3109,7 +4076,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3173,7 +4140,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3194,6 +4161,11 @@ "type": "string", "description": "The project to be billed for this request. Required for Requester Pays buckets.", "location": "query" + }, + "softDeleted": { + "type": "boolean", + "description": "If true, only soft-deleted object versions will be listed. The default is false. For more information, see Soft Delete.", + "location": "query" } }, "parameterOrder": [ @@ -3233,7 +4205,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3306,7 +4278,7 @@ }, "name": { "type": "string", - "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "location": "query" }, "predefinedAcl": { @@ -3457,6 +4429,16 @@ "type": "string", "description": "Filter results to objects and prefixes that match this glob pattern.", "location": "query" + }, + "softDeleted": { + "type": "boolean", + "description": "If true, only soft-deleted object versions will be listed. The default is false. For more information, see Soft Delete.", + "location": "query" + }, + "includeFoldersAsPrefixes": { + "type": "boolean", + "description": "Only applicable if delimiter is set to '/'. If true, will also include folders and managed folders (besides objects) in the returned prefixes.", + "location": "query" } }, "parameterOrder": [ @@ -3516,9 +4498,14 @@ "format": "int64", "location": "query" }, + "overrideUnlockedRetention": { + "type": "boolean", + "description": "Must be true to remove the retention configuration, reduce its unlocked retention period, or change its mode from unlocked to locked.", + "location": "query" + }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3596,7 +4583,7 @@ }, "destinationObject": { "type": "string", - "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3707,7 +4694,7 @@ }, "sourceObject": { "type": "string", - "description": "Name of the source object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the source object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3755,7 +4742,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3801,7 +4788,7 @@ }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -3876,9 +4863,14 @@ "format": "int64", "location": "query" }, + "overrideUnlockedRetention": { + "type": "boolean", + "description": "Must be true to remove the retention configuration, reduce its unlocked retention period, or change its mode from unlocked to locked.", + "location": "query" + }, "object": { "type": "string", - "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](http://cloud/storage/docs/request-endpoints#encoding).", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see [Encoding URI Path Parts](https://cloud.google.com/storage/docs/request-endpoints#encoding).", "required": true, "location": "path" }, @@ -4029,6 +5021,122 @@ "https://www.googleapis.com/auth/devstorage.read_write" ], "supportsSubscription": true + }, + "restore": { + "id": "storage.objects.restore", + "path": "b/{bucket}/o/{object}/restore", + "httpMethod": "POST", + "description": "Restores a soft-deleted object.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the bucket in which the object resides.", + "required": true, + "location": "path" + }, + "generation": { + "type": "string", + "description": "Selects a specific revision of this object.", + "required": true, + "format": "int64", + "location": "query" + }, + "object": { + "type": "string", + "description": "Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", + "required": true, + "location": "path" + }, + "ifGenerationMatch": { + "type": "string", + "description": "Makes the operation conditional on whether the object's one live generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.", + "format": "int64", + "location": "query" + }, + "ifGenerationNotMatch": { + "type": "string", + "description": "Makes the operation conditional on whether none of the object's live generations match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.", + "format": "int64", + "location": "query" + }, + "ifMetagenerationMatch": { + "type": "string", + "description": "Makes the operation conditional on whether the object's one live metageneration matches the given value.", + "format": "int64", + "location": "query" + }, + "ifMetagenerationNotMatch": { + "type": "string", + "description": "Makes the operation conditional on whether none of the object's live metagenerations match the given value.", + "format": "int64", + "location": "query" + }, + "copySourceAcl": { + "type": "boolean", + "description": "If true, copies the source object's ACL; otherwise, uses the bucket's default object ACL. The default is false.", + "location": "query" + }, + "projection": { + "type": "string", + "description": "Set of properties to return. Defaults to full.", + "enum": [ + "full", + "noAcl" + ], + "enumDescriptions": [ + "Include all properties.", + "Omit the owner, acl property." + ], + "location": "query" + }, + "userProject": { + "type": "string", + "description": "The project to be billed for this request. Required for Requester Pays buckets.", + "location": "query" + } + }, + "parameterOrder": [ + "bucket", + "object" + ], + "request": { + "$ref": "Object" + }, + "response": { + "$ref": "Object" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control" + ] + }, + "bulkRestore": { + "id": "storage.objects.bulkRestore", + "path": "b/{bucket}/o/bulkRestore", + "httpMethod": "POST", + "description": "Initiates a long-running bulk restore operation on the specified bucket.", + "parameters": { + "bucket": { + "type": "string", + "description": "Name of the bucket in which the object resides.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "bucket" + ], + "request": { + "$ref": "BulkRestoreObjectsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_write" + ] } } }, @@ -4278,6 +5386,6 @@ } } }, - "revision": "20230625", - "etag": "\"33383834333438333437323330383739383237\"" -} \ No newline at end of file + "revision": "20231028", + "etag": "\"39383633393336373936373236333033393737\"" +} diff --git a/vendor/Gcp/google/cloud-storage/src/HmacKey.php b/vendor/Gcp/google/cloud-storage/src/HmacKey.php index c9e69c65..3410c117 100644 --- a/vendor/Gcp/google/cloud-storage/src/HmacKey.php +++ b/vendor/Gcp/google/cloud-storage/src/HmacKey.php @@ -33,6 +33,7 @@ class HmacKey { /** * @var ConnectionInterface + * @internal */ private $connection; /** @@ -49,6 +50,8 @@ class HmacKey private $info; /** * @param ConnectionInterface $connection A connection to Cloud Storage. + * This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param string $projectId The current project ID. * @param string $accessId The key identifier. * @param array|null $info The key metadata. @@ -147,7 +150,7 @@ public function update($state, array $options = []) * Delete the HMAC Key. * * Key state must be set to `INACTIVE` prior to deletion. See - * {@see Google\Cloud\Storage\HmacKey::update()} for details. + * {@see HmacKey::update()} for details. * * Example: * ``` diff --git a/vendor/Gcp/google/cloud-storage/src/Lifecycle.php b/vendor/Gcp/google/cloud-storage/src/Lifecycle.php index 430bbb0b..acadab7f 100644 --- a/vendor/Gcp/google/cloud-storage/src/Lifecycle.php +++ b/vendor/Gcp/google/cloud-storage/src/Lifecycle.php @@ -25,8 +25,8 @@ * * This builder does not execute any network requests and is intended to be used * in combination with either - * {@see Google\Cloud\Storage\StorageClient::createBucket()} - * or {@see Google\Cloud\Storage\Bucket::update()}. + * {@see StorageClient::createBucket()} + * or {@see Bucket::update()}. * * Example: * ``` diff --git a/vendor/Gcp/google/cloud-storage/src/Notification.php b/vendor/Gcp/google/cloud-storage/src/Notification.php index cec1f17b..202099c3 100644 --- a/vendor/Gcp/google/cloud-storage/src/Notification.php +++ b/vendor/Gcp/google/cloud-storage/src/Notification.php @@ -29,7 +29,7 @@ * and the object that changed. * * To utilize this class and see more examples, please see the relevant - * notifications based methods exposed on {@see Google\Cloud\Storage\Bucket}. + * notifications based methods exposed on {@see Bucket}. * * Example: * ``` @@ -53,6 +53,7 @@ class Notification use ArrayTrait; /** * @var ConnectionInterface Represents a connection to Cloud Storage. + * @internal */ private $connection; /** @@ -65,7 +66,8 @@ class Notification private $info; /** * @param ConnectionInterface $connection Represents a connection to Cloud - * Storage. + * Storage. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param string $id The notification's ID. * @param string $bucket The name of the bucket associated with this * notification. diff --git a/vendor/Gcp/google/cloud-storage/src/ObjectIterator.php b/vendor/Gcp/google/cloud-storage/src/ObjectIterator.php index 21b72cd3..94749524 100644 --- a/vendor/Gcp/google/cloud-storage/src/ObjectIterator.php +++ b/vendor/Gcp/google/cloud-storage/src/ObjectIterator.php @@ -19,7 +19,9 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Iterator\ItemIteratorTrait; /** - * Iterates over a set of {@see Google\Cloud\Storage\StorageObject} items. + * ObjectIterator + * + * Iterates over a set of {@see StorageObject} items. */ class ObjectIterator implements \Iterator { diff --git a/vendor/Gcp/google/cloud-storage/src/ObjectPageIterator.php b/vendor/Gcp/google/cloud-storage/src/ObjectPageIterator.php index a15789c9..733648a5 100644 --- a/vendor/Gcp/google/cloud-storage/src/ObjectPageIterator.php +++ b/vendor/Gcp/google/cloud-storage/src/ObjectPageIterator.php @@ -19,8 +19,10 @@ use DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Iterator\PageIteratorTrait; /** + * ObjectPageIterator + * * Iterates over a set of pages containing - * {@see Google\Cloud\Storage\StorageObject} items. + * {@see StorageObject} items. */ class ObjectPageIterator implements \Iterator { diff --git a/vendor/Gcp/google/cloud-storage/src/SigningHelper.php b/vendor/Gcp/google/cloud-storage/src/SigningHelper.php index 8ddcc1ea..fff3bfc8 100644 --- a/vendor/Gcp/google/cloud-storage/src/SigningHelper.php +++ b/vendor/Gcp/google/cloud-storage/src/SigningHelper.php @@ -54,14 +54,15 @@ public static function getHelper() * Sign using the version inferred from `$options.version`. * * @param ConnectionInterface $connection A connection to the Cloud Storage - * API. + * API. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param Timestamp|\DateTimeInterface|int $expires The signed URL * expiration. * @param string $resource The URI to the storage resource, preceded by a * leading slash. * @param int|null $generation The resource generation. * @param array $options Configuration options. See - * {@see Google\Cloud\Storage\StorageObject::signedUrl()} for + * {@see StorageObject::signedUrl()} for * details. * @return string * @throws \InvalidArgumentException @@ -92,14 +93,15 @@ public function sign(ConnectionInterface $connection, $expires, $resource, $gene * This method will be deprecated in the future. * * @param ConnectionInterface $connection A connection to the Cloud Storage - * API. + * API. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param Timestamp|\DateTimeInterface|int $expires The signed URL * expiration. * @param string $resource The URI to the storage resource, preceded by a * leading slash. * @param int|null $generation The resource generation. * @param array $options Configuration options. See - * {@see Google\Cloud\Storage\StorageObject::signedUrl()} for + * {@see StorageObject::signedUrl()} for * details. * @return string * @throws \InvalidArgumentException @@ -155,14 +157,15 @@ public function v2Sign(ConnectionInterface $connection, $expires, $resource, $ge * Sign a storage URL using Google Signed URLs v4. * * @param ConnectionInterface $connection A connection to the Cloud Storage - * API. + * API. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param Timestamp|\DateTimeInterface|int $expires The signed URL * expiration. * @param string $resource The URI to the storage resource, preceded by a * leading slash. * @param int|null $generation The resource generation. * @param array $options Configuration options. See - * {@see Google\Cloud\Storage\StorageObject::signedUrl()} for + * {@see StorageObject::signedUrl()} for * details. * @return string * @throws \InvalidArgumentException @@ -243,12 +246,14 @@ public function v4Sign(ConnectionInterface $connection, $expires, $resource, $ge * Create an HTTP POST policy using v4 signing. * * @param ConnectionInterface $connection A Connection to Google Cloud Storage. + * This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param Timestamp|\DateTimeInterface|int $expires The signed URL * expiration. * @param string $resource The URI to the storage resource, preceded by a * leading slash. * @param array $options Configuration options. See - * {@see Google\Cloud\Storage\Bucket::generateSignedPostPolicyV4()} for details. + * {@see Bucket::generateSignedPostPolicyV4()} for details. * @return array An associative array, containing (string) `uri` and * (array) `fields` keys. */ @@ -542,6 +547,8 @@ private function normalizeCanonicalRequestResource($resource, $bucketBoundHostna * Get the credentials for use with signing. * * @param ConnectionInterface $connection A Storage connection object. + * This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param array $options Configuration options. * @return array A list containing a credentials object at index 0 and the * modified options at index 1. diff --git a/vendor/Gcp/google/cloud-storage/src/StorageClient.php b/vendor/Gcp/google/cloud-storage/src/StorageClient.php index 4fc1f11b..5167d54b 100644 --- a/vendor/Gcp/google/cloud-storage/src/StorageClient.php +++ b/vendor/Gcp/google/cloud-storage/src/StorageClient.php @@ -45,7 +45,7 @@ class StorageClient { use ArrayTrait; use ClientTrait; - const VERSION = '1.33.0'; + const VERSION = '1.39.0'; const FULL_CONTROL_SCOPE = 'https://www.googleapis.com/auth/devstorage.full_control'; const READ_ONLY_SCOPE = 'https://www.googleapis.com/auth/devstorage.read_only'; const READ_WRITE_SCOPE = 'https://www.googleapis.com/auth/devstorage.read_write'; @@ -68,6 +68,7 @@ class StorageClient const RETRY_IDEMPOTENT = 'idempotent'; /** * @var ConnectionInterface Represents a connection to Storage. + * @internal */ protected $connection; /** @@ -113,9 +114,10 @@ public function __construct(array $config = []) $this->connection = new Rest($this->configureAuthentication($config) + ['projectId' => $this->projectId]); } /** - * Lazily instantiates a bucket. There are no network requests made at this - * point. To see the operations that can be performed on a bucket please - * see {@see Google\Cloud\Storage\Bucket}. + * Lazily instantiates a bucket. + * + * There are no network requests made at this point. To see the operations + * that can be performed on a bucket please see {@see Bucket}. * * If `$userProject` is set to true, the current project ID (used to * instantiate the client) will be billed for all requests. If @@ -234,6 +236,10 @@ public function buckets(array $options = []) * `"projectPrivate"`, and `"publicRead"`. * @type string $predefinedDefaultObjectAcl Apply a predefined set of * default object access controls to this bucket. + * @type bool $enableObjectRetention Whether object retention should + * be enabled on this bucket. For more information, refer to the + * [Object Retention Lock](https://cloud.google.com/storage/docs/object-lock) + * documentation. * @type string $projection Determines which properties to return. May * be either `"full"` or `"noAcl"`. **Defaults to** `"noAcl"`, * unless the bucket resource specifies acl or defaultObjectAcl @@ -271,6 +277,8 @@ public function buckets(array $options = []) * Buckets can have either StorageClass OLM rules or Autoclass, * but not both. When Autoclass is enabled on a bucket, adding * StorageClass OLM rules will result in failure. + * For more information, refer to + * [Storage Autoclass](https://cloud.google.com/storage/docs/autoclass) * @type array $versioning The bucket's versioning configuration. * @type array $website The bucket's website configuration. * @type array $billing The bucket's billing configuration. @@ -300,7 +308,7 @@ public function buckets(array $options = []) * occurs, signified by the hold's release. * @type array $retentionPolicy Defines the retention policy for a * bucket. In order to lock a retention policy, please see - * {@see Google\Cloud\Storage\Bucket::lockRetentionPolicy()}. + * {@see Bucket::lockRetentionPolicy()}. * @type int $retentionPolicy.retentionPeriod Specifies the retention * period for objects in seconds. During the retention period an * object cannot be overwritten or deleted. Retention period must @@ -366,7 +374,7 @@ public function unregisterStreamWrapper($protocol = null) * @param string $uri The URI to accept an upload request. * @param string|resource|StreamInterface $data The data to be uploaded * @param array $options [optional] Configuration Options. Refer to - * {@see Google\Cloud\Core\Upload\AbstractUploader::__construct()}. + * {@see \Google\Cloud\Core\Upload\AbstractUploader::__construct()}. * @return SignedUrlUploader */ public function signedUrlUploader($uri, $data, array $options = []) diff --git a/vendor/Gcp/google/cloud-storage/src/StorageObject.php b/vendor/Gcp/google/cloud-storage/src/StorageObject.php index a6cbf6e5..97ff5e1f 100644 --- a/vendor/Gcp/google/cloud-storage/src/StorageObject.php +++ b/vendor/Gcp/google/cloud-storage/src/StorageObject.php @@ -53,6 +53,7 @@ class StorageObject private $acl; /** * @var ConnectionInterface Represents a connection to Cloud Storage. + * @internal */ protected $connection; /** @@ -69,7 +70,8 @@ class StorageObject private $info; /** * @param ConnectionInterface $connection Represents a connection to Cloud - * Storage. + * Storage. This object is created by StorageClient, + * and should not be instantiated outside of this client. * @param string $name The object's name. * @param string $bucket The name of the bucket the object is contained in. * @param string $generation [optional] The generation of the object. @@ -194,6 +196,18 @@ public function delete(array $options = []) * Acceptable values include, `"authenticatedRead"`, * `"bucketOwnerFullControl"`, `"bucketOwnerRead"`, `"private"`, * `"projectPrivate"`, and `"publicRead"`. + * @type array $retention The full list of available options are outlined + * at the [JSON API docs](https://cloud.google.com/storage/docs/json_api/v1/objects/update#request-body). + * @type string $retention.retainUntilTime The earliest time in RFC 3339 + * UTC "Zulu" format that the object can be deleted or replaced. + * This is the retention configuration set for this object. + * @type string $retention.mode The mode of the retention configuration, + * which can be either `"Unlocked"` or `"Locked"`. + * @type bool $overrideUnlockedRetention Applicable for objects that + * have an unlocked retention configuration. Required to be set to + * `true` if the operation includes a retention property that + * changes the mode to `Locked`, reduces the `retainUntilTime`, or + * removes the retention configuration from the object. * @type string $projection Determines which properties to return. May * be either 'full' or 'noAcl'. * @type string $fields Selector which will cause the response to only @@ -479,7 +493,7 @@ public function rename($name, array $options = []) * Download an object as a string. * * For an example of setting the range header to download a subrange of the - * object please see {@see Google\Cloud\Storage\StorageObject::downloadAsStream()}. + * object please see {@see StorageObject::downloadAsStream()}. * * Example: * ``` @@ -512,7 +526,7 @@ public function downloadAsString(array $options = []) * Download an object to a specified location. * * For an example of setting the range header to download a subrange of the - * object please see {@see Google\Cloud\Storage\StorageObject::downloadAsStream()}. + * object please see {@see StorageObject::downloadAsStream()}. * * Example: * ``` @@ -602,7 +616,7 @@ public function downloadAsStream(array $options = []) * Asynchronously download an object as a stream. * * For an example of setting the range header to download a subrange of the - * object please see {@see Google\Cloud\Storage\StorageObject::downloadAsStream()}. + * object please see {@see StorageObject::downloadAsStream()}. * * Example: * ``` @@ -674,10 +688,10 @@ public function downloadAsStreamAsync(array $options = []) * Token Creator" IAM role. * * Additionally, signing using IAM requires different scopes. When creating - * an instance of {@see Google\Cloud\Storage\StorageClient}, provide the + * an instance of {@see StorageClient}, provide the * `https://www.googleapis.com/auth/cloud-platform` scopein `$options.scopes`. * This scope may be used entirely in place of the scopes provided in - * {@see Google\Cloud\Storage\StorageClient}. + * {@see StorageClient}. * * App Engine and Compute Engine will attempt to sign URLs using IAM. * @@ -722,7 +736,7 @@ public function downloadAsStreamAsync(array $options = []) * @see https://cloud.google.com/storage/docs/access-control/signed-urls Signed URLs * * @param Timestamp|\DateTimeInterface|int $expires Specifies when the URL - * will expire. May provide an instance of {@see Google\Cloud\Core\Timestamp}, + * will expire. May provide an instance of {@see \Google\Cloud\Core\Timestamp}, * [http://php.net/datetimeimmutable](`\DateTimeImmutable`), or a * UNIX timestamp as an integer. * @param array $options { @@ -801,7 +815,7 @@ public function signedUrl($expires, array $options = []) /** * Create a Signed Upload URL for this object. * - * This method differs from {@see Google\Cloud\Storage\StorageObject::signedUrl()} + * This method differs from {@see StorageObject::signedUrl()} * in that it allows you to initiate a new resumable upload session. This * can be used to allow non-authenticated users to insert an object into a * bucket. @@ -812,7 +826,7 @@ public function signedUrl($expires, array $options = []) * more information. * * If you prefer to skip this initial step, you may find - * {@see Google\Cloud\Storage\StorageObject::beginSignedUploadSession()} to + * {@see StorageObject::beginSignedUploadSession()} to * fit your needs. Note that `beginSignedUploadSession()` cannot be used * with Google Cloud PHP's Signed URL Uploader, and does not support a * configurable expiration date. @@ -830,7 +844,7 @@ public function signedUrl($expires, array $options = []) * ``` * * @param Timestamp|\DateTimeInterface|int $expires Specifies when the URL - * will expire. May provide an instance of {@see Google\Cloud\Core\Timestamp}, + * will expire. May provide an instance of {@see \Google\Cloud\Core\Timestamp}, * [http://php.net/datetimeimmutable](`\DateTimeImmutable`), or a * UNIX timestamp as an integer. * @param array $options { @@ -895,7 +909,7 @@ public function signedUploadUrl($expires, array $options = []) * Create a signed URL upload session. * * The returned URL differs from the return value of - * {@see Google\Cloud\Storage\StorageObject::signedUploadUrl()} in that it + * {@see StorageObject::signedUploadUrl()} in that it * is ready to accept upload data immediately via an HTTP PUT request. * * Because an upload session is created by the client, the expiration date diff --git a/vendor/Gcp/google/common-protos/CHANGELOG.md b/vendor/Gcp/google/common-protos/CHANGELOG.md new file mode 100644 index 00000000..f1d61e3a --- /dev/null +++ b/vendor/Gcp/google/common-protos/CHANGELOG.md @@ -0,0 +1,87 @@ +# Changelog + +## [4.5.0](https://github.com/googleapis/common-protos-php/compare/v4.4.0...v4.5.0) (2023-11-29) + + +### Features + +* Add auto_populated_fields to google.api.MethodSettings ([#74](https://github.com/googleapis/common-protos-php/issues/74)) ([d739417](https://github.com/googleapis/common-protos-php/commit/d7394176eb95f0e92af4e93746dba8f515ba9bc2)) + +## [4.4.0](https://github.com/googleapis/common-protos-php/compare/v4.3.0...v4.4.0) (2023-10-02) + + +### Features + +* Public google.api.FieldInfo type and extension ([#71](https://github.com/googleapis/common-protos-php/issues/71)) ([4002074](https://github.com/googleapis/common-protos-php/commit/40020744c65e7561dec08e1cd2994afcc51ec771)) + +## [4.3.0](https://github.com/googleapis/common-protos-php/compare/v4.2.0...v4.3.0) (2023-08-22) + + +### Features + +* Add new FieldBehavior value IDENTIFIER ([#67](https://github.com/googleapis/common-protos-php/issues/67)) ([6c6c21f](https://github.com/googleapis/common-protos-php/commit/6c6c21fc4a2f4711aeddad11082ed17acaf4733c)) + +## [4.2.0](https://github.com/googleapis/common-protos-php/compare/v4.1.0...v4.2.0) (2023-07-25) + + +### Features + +* Add a proto message to describe the `resource_type` and `resource_permission` for an API method ([#64](https://github.com/googleapis/common-protos-php/issues/64)) ([8a0ff5f](https://github.com/googleapis/common-protos-php/commit/8a0ff5f9ffcf3683fc4718e85e97f45a001a1925)) + +## [4.1.0](https://github.com/googleapis/common-protos-php/compare/v4.0.0...v4.1.0) (2023-05-06) + + +### Features + +* Add ConfigServiceV2.CreateBucketAsync method for creating Log Buckets asynchronously ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add ConfigServiceV2.CreateLink method for creating linked datasets for Log Analytics Buckets ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add ConfigServiceV2.DeleteLink method for deleting linked datasets ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add ConfigServiceV2.GetLink methods for describing linked datasets ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add ConfigServiceV2.ListLinks method for listing linked datasets ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add ConfigServiceV2.UpdateBucketAsync method for creating Log Buckets asynchronously ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add LogBucket.analytics_enabled field that specifies whether Log Bucket's Analytics features are enabled ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Add LogBucket.index_configs field that contains a list of Log Bucket's indexed fields and related configuration data ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) +* Log Analytics features of the Cloud Logging API ([#60](https://github.com/googleapis/common-protos-php/issues/60)) ([b18d554](https://github.com/googleapis/common-protos-php/commit/b18d55421cbe1e55d62b5d149e56be23db8c4286)) + +## [4.0.0](https://github.com/googleapis/common-protos-php/compare/v3.2.0...v4.0.0) (2023-05-01) + + +### ⚠ BREAKING CHANGES + +* remove files unknown to owlbot ([#59](https://github.com/googleapis/common-protos-php/issues/59)) +* add owlbot automated updates ([#54](https://github.com/googleapis/common-protos-php/issues/54)) + +### Features + +* Add owlbot automated updates ([#54](https://github.com/googleapis/common-protos-php/issues/54)) ([6d9134d](https://github.com/googleapis/common-protos-php/commit/6d9134d2f927e9c4aa3165e823477e25ef8ff38f)) +* Regenerate all common protos from new owlbot config ([#58](https://github.com/googleapis/common-protos-php/issues/58)) ([5dac653](https://github.com/googleapis/common-protos-php/commit/5dac653bdd60c4dbaec45e73e0ec487e5aeac9b1)) + + +### Miscellaneous Chores + +* Remove files unknown to owlbot ([#59](https://github.com/googleapis/common-protos-php/issues/59)) ([f541342](https://github.com/googleapis/common-protos-php/commit/f54134263a142e278c56f5e03e5a3d8c6f72aac3)) + +## [3.2.0](https://github.com/googleapis/common-protos-php/compare/v3.1.0...v3.2.0) (2023-01-12) + + +### Features + +* Refresh types ([#49](https://github.com/googleapis/common-protos-php/issues/49)) ([bd71fc0](https://github.com/googleapis/common-protos-php/commit/bd71fc05cbca1ccd94b71a42c227f0d69c688f07)) + +## [3.1.0](https://github.com/googleapis/common-protos-php/compare/v3.0.0...v3.1.0) (2022-10-05) + + +### Features + +* Make autoloader more efficient ([#45](https://github.com/googleapis/common-protos-php/issues/45)) ([cdff58a](https://github.com/googleapis/common-protos-php/commit/cdff58a3ff6c42e461f18f14c0bbd8e171456924)) + +## [3.0.0](https://github.com/googleapis/common-protos-php/compare/2.1.0...v3.0.0) (2022-07-29) + + +### ⚠ BREAKING CHANGES + +* remove longrunning classes from common protos (#41) + +### Miscellaneous Chores + +* remove longrunning classes from common protos ([#41](https://github.com/googleapis/common-protos-php/issues/41)) ([e88dd1d](https://github.com/googleapis/common-protos-php/commit/e88dd1d5dfef93358dc0bd7f3d62d09bbfd750b6)) diff --git a/vendor/Gcp/google/common-protos/CODE_OF_CONDUCT.md b/vendor/Gcp/google/common-protos/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..46b2a08e --- /dev/null +++ b/vendor/Gcp/google/common-protos/CODE_OF_CONDUCT.md @@ -0,0 +1,43 @@ +# Contributor Code of Conduct + +As contributors and maintainers of this project, +and in the interest of fostering an open and welcoming community, +we pledge to respect all people who contribute through reporting issues, +posting feature requests, updating documentation, +submitting pull requests or patches, and other activities. + +We are committed to making participation in this project +a harassment-free experience for everyone, +regardless of level of experience, gender, gender identity and expression, +sexual orientation, disability, personal appearance, +body size, race, ethnicity, age, religion, or nationality. + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery +* Personal attacks +* Trolling or insulting/derogatory comments +* Public or private harassment +* Publishing other's private information, +such as physical or electronic +addresses, without explicit permission +* Other unethical or unprofessional conduct. + +Project maintainers have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct. +By adopting this Code of Conduct, +project maintainers commit themselves to fairly and consistently +applying these principles to every aspect of managing this project. +Project maintainers who do not follow or enforce the Code of Conduct +may be permanently removed from the project team. + +This code of conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. + +Instances of abusive, harassing, or otherwise unacceptable behavior +may be reported by opening an issue +or contacting one or more of the project maintainers. + +This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0, +available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/) diff --git a/vendor/Gcp/google/common-protos/CONTRIBUTING.md b/vendor/Gcp/google/common-protos/CONTRIBUTING.md new file mode 100644 index 00000000..23c9455d --- /dev/null +++ b/vendor/Gcp/google/common-protos/CONTRIBUTING.md @@ -0,0 +1,45 @@ +## Contributing + +We are pleased that you are interested in contributing to our work. + +### Generated Protocol Buffer Classes + +The classes in this repository are generated by the protocol buffer +compiler, as known as protoc. As such, we can not accept contributions +directly to these generated classes. Instead, changes should be +suggested upstream in the [API Common Protos][api-common-protos] +repository. + + +### Documentation + +We want for both protocol buffers and the types that we have provided here +to be understandable to everyone, including to those who may be unfamiliar +with the ecosystem or concepts. + +That means we want our documentation to be better, and welcome anyone +willing to help with this. For documentation in the generated classes, please +open a pull request against the [API Common Protos][api-common-protos] +repository. + +Any improvements to READMEs or other non-generated documentation or +development scripts in this repository would be greatly appreciated - please +open a pull request. + + +## Contributor License Agreement + +Before we can accept your pull requests, you will need to sign a Contributor +License Agreement (CLA): + + - **If you are an individual writing original source code** and **you own the + intellectual property**, then you need to sign an [individual CLA][]. + - **If you work for a company that wants to allow you to contribute your + work**, then you need to sign a [corporate CLA][]. + +You can sign these electronically (just scroll to the bottom). After that, +we'll be able to accept your pull requests. + + [individual CLA]: https://developers.google.com/open-source/cla/individual + [corporate CLA]: https://developers.google.com/open-source/cla/corporate + [api-common-protos]: https://github.com/googleapis/api-common-protos \ No newline at end of file diff --git a/vendor/Gcp/google/crc32/LICENSE b/vendor/Gcp/google/common-protos/LICENSE similarity index 100% rename from vendor/Gcp/google/crc32/LICENSE rename to vendor/Gcp/google/common-protos/LICENSE diff --git a/vendor/Gcp/google/common-protos/README.md b/vendor/Gcp/google/common-protos/README.md new file mode 100644 index 00000000..29c35024 --- /dev/null +++ b/vendor/Gcp/google/common-protos/README.md @@ -0,0 +1,46 @@ +## Common Protos PHP + +[![release level](https://img.shields.io/badge/release%20level-general%20availability%20%28GA%29-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages) + +![Build Status](https://github.com/googleapis/common-protos-php/actions/workflows/tests.yml/badge.svg) + +- [Documentation](https://googleapis.github.io/common-protos-php) + +This repository is a home for the [protocol buffer][protobuf] types which are +common dependencies throughout the Google API ecosystem, generated for PHP. +The protobuf definitions for these generated PHP classes are provided by the +[Common Components AIP][common-components-aip] repository. + +## Using these generated classes + +These classes are made available under an Apache license (see `LICENSE`) and +you are free to depend on them within your applications. They are +considered stable and will not change in backwards-incompaible ways. + +They are distributed as the [google/common-protos][packagist-common-protos] +composer package, available on [Packagist][packagist]. + +In order to depend on these classes, add the following line to your +composer.json file in the `requires` section: + +``` + "google/common-protos": "^2.0" +``` + +Or else use composer from the command line: + +```bash +composer require google/common-protos +``` + +## License + +These classes are licensed using the Apache 2.0 software license, a +permissive, copyfree license. You are free to use them in your applications +provided the license terms are honored. + + [api-style]: https://cloud.google.com/apis/design/ + [protobuf]: https://developers.google.com/protocol-buffers/ + [common-components-aip]: https://google.aip.dev/213 + [packagist-common-protos]: https://packagist.org/packages/google/common-protos/ + [packagist]: https://packagist.org/ diff --git a/vendor/Gcp/google/common-protos/SECURITY.md b/vendor/Gcp/google/common-protos/SECURITY.md new file mode 100644 index 00000000..8b58ae9c --- /dev/null +++ b/vendor/Gcp/google/common-protos/SECURITY.md @@ -0,0 +1,7 @@ +# Security Policy + +To report a security issue, please use [g.co/vulnz](https://g.co/vulnz). + +The Google Security Team will respond within 5 working days of your report on g.co/vulnz. + +We use g.co/vulnz for our intake, and do coordination and disclosure here using GitHub Security Advisory to privately discuss and fix the issue. diff --git a/vendor/Gcp/google/common-protos/composer.json b/vendor/Gcp/google/common-protos/composer.json new file mode 100644 index 00000000..bf41b237 --- /dev/null +++ b/vendor/Gcp/google/common-protos/composer.json @@ -0,0 +1,32 @@ +{ + "name": "google\/common-protos", + "type": "library", + "description": "Google API Common Protos for PHP", + "keywords": [ + "google" + ], + "homepage": "https:\/\/github.com\/googleapis\/common-protos-php", + "license": "Apache-2.0", + "require": { + "php": ">=7.4", + "google\/protobuf": "^3.6.1" + }, + "require-dev": { + "phpunit\/phpunit": "^9.0" + }, + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Api\\": "src\/Api", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Cloud\\": "src\/Cloud", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Iam\\": "src\/Iam", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Rpc\\": "src\/Rpc", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\Type\\": "src\/Type", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Api\\": "metadata\/Api", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Cloud\\": "metadata\/Cloud", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Iam\\": "metadata\/Iam", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Logging\\": "metadata\/Logging", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Rpc\\": "metadata\/Rpc", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\Type\\": "metadata\/Type" + } + } +} \ No newline at end of file diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Annotations.php b/vendor/Gcp/google/common-protos/metadata/Api/Annotations.php new file mode 100644 index 00000000..4631ade4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Annotations.php @@ -0,0 +1,24 @@ +internalAddGeneratedFile(' + +google/api/annotations.proto +google.api google/protobuf/descriptor.protoBn +com.google.apiBAnnotationsProtoPZAgoogle.golang.org/genproto/googleapis/api/annotations;annotationsGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Auth.php b/vendor/Gcp/google/common-protos/metadata/Api/Auth.php new file mode 100644 index 0000000000000000000000000000000000000000..164b45d1edc2ddaebf2cec6071ce2c0ee410f031 GIT binary patch literal 1361 zcma)6T~8B16txJIUJzl`xW;J4YGR2}qCQ#t2n~oBv5he?F^!vH_HH{e%&arB)Q|8( z^wBr}rFVA=ln)d8((K)H&zy7aoqhTu9i#wv*am8}++)nPzcD{RmRjSDFp6zwNrILM zvztnVw#nF9hrR8*XX|U5?{8D9Gnp0GVtr%!3YU2*mwDy~&4K|m-$j>lfou(x6w+j_ zZMoF0_n{kgl0+FEM_U+6-rEpqZ=>7ZLeFFF>A4{6t)_AXKq&4UTP0%n0gQfWwoQD@ zdG6`&u5^*q(o3%7cXIKJ^%AZeuAG5QGA+C`n&k~0EwHgzpi17H`)+E;IdS}-=2B-j zPmI#)ZEBBJb4A@wSebfbyTsRO_0b>ZoL3r)rM&z|nXpFbrPVrRhLm`l;UYVdnDj6@JsG2Q;bhSgo@}Au3PAl&1%fj;=3&~QLP0r( z6;^4~f(I~VIOz%}=yB%J&2h#~&hQSuWYXd;33ma5kSk?|(NOw<$$TU%#Y!T#T#!1TLM3FSrad2YV46+BzmWA8oC@19SA{8Pn0OjZ*QZ zTlu&?+P=O~T=$#C_LuvpiP@Xw@)d2dE51n%?Vc1Uj80^K<=E5jiOG%C?&fy2XncI{ U!RWdj-K>A!%o14w_hBFY0_CEofB*mh literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Backend.php b/vendor/Gcp/google/common-protos/metadata/Api/Backend.php new file mode 100644 index 0000000000000000000000000000000000000000..a7b9afff7e1d1c7665e1b7bf0113d7d5204654b8 GIT binary patch literal 1349 zcma)6+iuf95N*=?wknZ@idBJFN<~u%Qc)g2DHl0S+D4*@l>{MG5!S|@q)Xjhv%4+| zsIPnopTHL~w$r3sBJhi~Gw00CoSE5|Z=$n^kcadL1Sn=8puHhAXFww*jr3(mdvU)H ziu&>*;vuLKrPU^FG&{6bt#=+ERm)iUP^JSZ2O;dTi0}58e-0ujr9p^b7oa2N1Fb^H zeJ*2NQH%@SeeZhBem|5f@J=A$tb61~-6OYh0)_?5;5m)ibt1k`h#xYoX(fwIz7mRG z6!$PB)rJ}TZE@{!!3}32|AMu=qTN0VHSGTd+mD5BxD+%YG=&evofMVDO=53F66?np z|Ce@_s+;JBnsw{KfD$Z3w)Pc|j8rbhE0+gg#%d>);!c)cawYH6VpdDJ{6{gEiBU1^ z&`F93M}dizn8dhB%Sb$F0Z(4@Q6^3hj4wXKUKY2>w*_KP>zhR~PYFA^`IIbAC?HrvguI$|@O<<)FriK2^A9G~o#@Q;6B@H3?C;c!T7XtdsnZ1PeCA4Gi*E?e`Cs^wP zxhF3{DIS3KdP7garx>*H#xRl!_%n8k@ZL4rZtb9cSg%zJGuCZV zIA}K79jDRpoNBdIYqtwYqt+eQtu?A%MsJRN`AUJTB_e{r?M>TM5o8UYnj4Z-R!2jW z7VqXxYomD^$dHLaNvgr_07NS4Zsx*))#*E=L0xhmd@1^Tu>Z^Hdw%Z7aqGQ>l=y7> T@o2dwdo*internalAddGeneratedFile(' + +google/api/billing.proto +google.api" +BillingE +consumer_destinations ( 2&.google.api.Billing.BillingDestinationA +BillingDestination +monitored_resource (  +metrics ( Bn +com.google.apiB BillingProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Client.php b/vendor/Gcp/google/common-protos/metadata/Api/Client.php new file mode 100644 index 0000000000000000000000000000000000000000..f0733ff0f71443571901e85f626c781e1ed38745 GIT binary patch literal 3668 zcmbVPTXWi05H9$VcyTaMVjI&oqqu2eCk<}Nw9Vl3!Yzb`00ShMW|+|g@y=xC&) zBu*!PrhV&w>GZkJ{TZFUOW%Dn6lt42Z!060%pY z*&%>#64zBr5*mI16+gDuM?}>XMBvvA=4#Ahf)SIw!<&4k_J+iC>EQy|p=arWaZB|T znwC!Y_N7#S>to-rIo=*I&gOOCY0HlqMyyw}1a&N8qPD9$%of~fAznUjP%(?O|734J zaL+f%hU#8$mwf)jWzZAhcywP4UG#MvDm=#uG2Y8-_$Oy{d||kIb%FsJbp$bJJ|D&? zv~zCsS%}IW5)M6ns-b+m@E@}_P&t}g8*b2qY~d)a`{b=G%?bA)V}3h(~21e4A+qZOG?WVclS2 z<=2@kbfpegT@f|b|A^n(7dmXF_$?G_*rt=&956}^QaBSZseZjmYAoc#yrpbAP?@B1!iUFjc?yM1 zTkcwZul8&I%P2J#W3{I$0lBdBnPG7U{R+XBWwEM|9&%jd1_6Ejg-ydnin!EGuSf|j z_YtuMZyY8B#fFSX1eXsyU-i#3-@w&{H~0VtGvC7IMDLilA5h%IgwHkDb7X4wM}V;F zMvCw3{Qol!$zzQ-1s7dvQXRLxN$EYn3C%4-b3Dt!el90;B6l;Izp9mU&$wDKuz z5>If==C)`0Te>!6)EopnSj+qogG5yPYfvV8Flv~lHlQX6dO#w#Gc`F~cCynw%(oJX zYh%w8%*JiokdmL+R7|-5ONDYL z6;}XOTaTLEW+%0zY(S#ZZC5H??OCnzJhiN>!^O^{W~)_eR8uRyPPNiZttyw{Qnk{k zw9&@1idLwlF5EUCJ?CX)c~fq~&0{{6E1hnwvB*Vqr&{YidRk0@as@V8h0^0fwW2*K zH1MmPx>{tA#E~#f91iGWA~4+YUpHE@7lp|_X>b!a)GQ9y1A|&J!w10;D!KC2j93TNtM)+$%M@EC_+V; zJWF|kszr$FkrQu12JUF`z@%m}R}4EOmNHJTO;g@xQbars*eMk;wn``v^bE6_5rtkg0i=sr*Fc@RV>2%1_>Co?uQPYrWb1#vn-IN~zu!LqA>6aDyWdZmK z#C&N!Gq@zvRGZ&E&jK#E<}~47Ok2;%G@?m{M}LToa=|p0f)oj!VAyDuQ5Ltr-cO~G z!eIO#cgxo=BsB6(M?#|#G%?v3Q#{pD`3A4kiBVq(UsxJVORp%&Bhs+FbUME^W0+`_ zW0Nc>7C8!auEYZ4vTUR9lnp$2!RJi6VR%*e*o?Jt06(g5|KB5Y!1`Ne#Jk@ru(dn{ z=LT$Gf@dgny+SIDO=kx-WfBJGG|92P^2;Rf^W0P|O^={vpGlxEQmn5UT9Ihs2w`Xf!)%zdk@y_$+-o!aIUzSuI2F116V@53wQdjx+lXy zF!|sQg10Ac{6T+oJQ}z+uQ{8r)^%NTtT;8;cs&?<@62Vz*@Ek1&$Ut2-Y3{L%dteH zx3erv`3n5X$Ns#fSSDsGT2jUB7)7}oZR;|!W=rd1WjV6DWG~-WR)<}GG+Qszo*q1& SKZC`@|N3HVqz$};OZW*YLO=fi literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Consumer.php b/vendor/Gcp/google/common-protos/metadata/Api/Consumer.php new file mode 100644 index 0000000000000000000000000000000000000000..90601569cdb6c85fdac99d87c9bcfb1fea3929f5 GIT binary patch literal 967 zcma)5T~8B16t%PxxFFWm2Yeflge8$SLE}Ra4W*@N0^LSROiU9poxQt^S#~BfvnFVG z_Rshuz54;x2#Nc$d-tAm=G>2Y|50CRfLCmQDH`rDWV37LE|F=YoDwQwvn-0xFrlur zOwhC#>ji8SOjy4+oNN%)s>}%Nuvn=$!8X^jEmUf=D*_iPkn$_EnhRt-Or(%1vt7ew zYNwya7eN#yiia1c7)m}J2t6H)yQk=Q$Q{Ln==4y_eE^YgYuQmH4nKg=qq7-lGV8db z*Os&wGL=s9M1H4g4%jr}iN*bUuu+x@CsoRFLXZmdcM4Rgn`>`rMI9iG|MOjX9p{~+ zu1$xjLzD7^*j5;+oibz6>vUptcm2-)_&cS&{74xwzpSOx`KK6i;!K7+Y;G~<7<8FQ z=NdOf8F{8CVE2QpoE(PX-NDB+O@AAH*5T!Ylk=cVwP>iD2k?wa`-;NROQUfTt>**K zjH_t9#_Imc-iy|p)vB=9o4;zXbQ^f9(8!m92sMA%YeU0bYg}KTXl-xfKKh-`gn-_2 zSP841()`xzxyt4VtlsJupr^2MJ~|uskA}y?ey{n+TZYHO(d6CRX3blIMmGpfnhPGl z;@RZWa5QMv^Y318-aY9z8{JD-qm}=|O83d_;?XHijcZ@}Rhh9$cpA5qiQ6%zI?uMt q6t&G37s8_XCI!;Hh-AF~S2SBJ7;m;;SHqpp@xeVPktOg3Zs0fh0W|pl literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Context.php b/vendor/Gcp/google/common-protos/metadata/Api/Context.php new file mode 100644 index 00000000..7f18b940 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Context.php @@ -0,0 +1,31 @@ +internalAddGeneratedFile(' + +google/api/context.proto +google.api"1 +Context& +rules ( 2.google.api.ContextRule" + ContextRule +selector (  + requested (  +provided ( " +allowed_request_extensions ( # +allowed_response_extensions ( Bn +com.google.apiB ContextProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Control.php b/vendor/Gcp/google/common-protos/metadata/Api/Control.php new file mode 100644 index 00000000..f63a4165 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Control.php @@ -0,0 +1,27 @@ +internalAddGeneratedFile(' + +google/api/control.proto +google.api"Q +Control + environment ( 1 +method_policies ( 2.google.api.MethodPolicyBn +com.google.apiB ControlProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Distribution.php b/vendor/Gcp/google/common-protos/metadata/Api/Distribution.php new file mode 100644 index 0000000000000000000000000000000000000000..cde14fa328f369a7c3f2dd0024c0334fa145152f GIT binary patch literal 1831 zcmbtV;cgp65U%UQZRVPY9w1pK0UM~OBQ>^U_~k%R+ypm*VuKYj5ZK=G)nCX21EaSQG$Xun|hs++xaRZz@C90)a!YGZJUuSN5kQi2 zW7x??0{9ac{fcr%yv$f`>F<#+v5>+Fo{K-|RNt~`#&d&5?}*JxnK-4)0md@H&Vi4r zcpdknLQy4%<96CBy%SeKs^0WWTGW!~gf@v5g;jb&e1pLp?W*qXOXr}H=TeG{b*i%r z2GiH-o{tKxR`fJ$1 z3tSdC*QO2hDd_Lt$aq>uM*FZ`sS2RE6w+6q5xNDxs0tAM(}dl(6^vjn7ZSOSD;P%PV@{~mDVtVP?8HW*CDtfc7EA*_IWK*yQmGb2Q8Il25n`JXbi!I#P>4M)y}ng zZ5MII6B;8mBPB2i&#@+q;64$0jUgqQk#$pd1~ zG=6(lx5!-O)DvB$=e;>fpSo9V5!76JYmU;5cj2$QTchL2*{tPZUp;internalAddGeneratedFile(' + +google/api/documentation.proto +google.api" + Documentation +summary (  +pages ( 2.google.api.Page, +rules ( 2.google.api.DocumentationRule +documentation_root_url (  +service_root_url (  +overview ( "[ +DocumentationRule +selector (  + description (  +deprecation_description ( "I +Page +name (  +content ( " +subpages ( 2.google.api.PageBt +com.google.apiBDocumentationProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Endpoint.php b/vendor/Gcp/google/common-protos/metadata/Api/Endpoint.php new file mode 100644 index 00000000..22d3915f --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Endpoint.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +google/api/endpoint.proto +google.api"Q +Endpoint +name (  +aliases ( B +targete (  + +allow_cors (Bo +com.google.apiB EndpointProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/ErrorReason.php b/vendor/Gcp/google/common-protos/metadata/Api/ErrorReason.php new file mode 100644 index 0000000000000000000000000000000000000000..e55d8fa0e4da2855eb200af772c153919a797515 GIT binary patch literal 1628 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 RH@~raZ?wv+5--Um`3LltR~7&O literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Httpbody.php b/vendor/Gcp/google/common-protos/metadata/Api/Httpbody.php new file mode 100644 index 00000000..43fdf997 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Httpbody.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +google/api/httpbody.proto +google.api"X +HttpBody + content_type (  +data ( ( + +extensions ( 2.google.protobuf.AnyBh +com.google.apiB HttpBodyProtoPZ;google.golang.org/genproto/googleapis/api/httpbody;httpbodyGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Label.php b/vendor/Gcp/google/common-protos/metadata/Api/Label.php new file mode 100644 index 0000000000000000000000000000000000000000..893628651d896528a92cc60af3ee4f759422e729 GIT binary patch literal 870 zcma)4U5nE|6gAy-v3FrD5u}gfy0R^-DXbr0>jy2>QrK;R76l2ENph1NoShja6QN4~ ziBCTJ1ATOol#S>L=4Hstx#ym9&wc(%T_}M2WQGDYHJFfSP0R%nrKORvni91Q2tY=j5zphOa>Er;5lDlH5>Z zk0X|^m|%uc&c0Y5FG!eDp5y2mY+8ueFeyk`;ENc0{R&m{mfS~5TJM(Q|3ue9gK}ne zUg2CA)PizboyVFfBXwZ;hQkca)uhXtUcZ)Cwqz;k)n10fzsy)AMiqbam# zI5w4y@})BH@Fm+S87IkA<2N?P-ZA`W!QJaKbD_TXY?g=L9JpOgz47Ai!_FsMcOByN z+U_%e&y*LqGHZq1mc2VTec&|=-XGQ8`x3phVD}E}C))|xG`c$_-{A?g8w9}KyXD*Y zV%E9g-h$nU@1J!Xw+%Pvi{;bDoz`Rp2X-}oYd3+aUzJ7Re0;JMl1WZQ=1H9mG8ENn s4(casGH%u2vo_)^20Xr z5B3}OuwOda4ozVn%wUXl?>YC}bM)?Gw#fiqBbN%Qh^8@Ge?fXfQKqDpk>qGyBnee0 zlD8S-RCN&=&(UnYM9$b-zB15U7Am5BluDU$+9Mh3aZ-qA6Xu$vv|BNOAh$HnNJPW6$b(OQI8PETNgPgT%t+uyS>XD^Db*w<+Wc3<0nXR}AmSv?(WDx%DEZ+V zAoFC!+R!31Qk%~y%R?rZW`wh^W~uimNC?mA;19it(W;pgs07SKMBAOJtL81aPcvzZ zFdY9Uy_V~j1{(7MPiU$H;Rc;Yie*|V-|+SODb;tjmnZE`Ew3EO64b7D>GywI#wgLM zpdGZASYi~_g%W#?ZM8;OsTMf@z;;S-9N!JTG@-W7;71c){xd)u>T=iQ`{sKCp4^MT zegV%Xcr_bcg^MM2op3c<_|C|?^qjHvzdMY^)X;-SWmr_yP&R$(ItL5eW9hmoLv*lvnTOU>p7iVvGp6~7b NYdm#l-MED<`~v5`5MKZQ literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Log.php b/vendor/Gcp/google/common-protos/metadata/Api/Log.php new file mode 100644 index 00000000..4c3e9f35 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Log.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +google/api/log.proto +google.api"u + LogDescriptor +name ( + +labels ( 2.google.api.LabelDescriptor + description (  + display_name ( Bj +com.google.apiBLogProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Logging.php b/vendor/Gcp/google/common-protos/metadata/Api/Logging.php new file mode 100644 index 00000000..d2febb0c --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Logging.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +google/api/logging.proto +google.api" +LoggingE +producer_destinations ( 2&.google.api.Logging.LoggingDestinationE +consumer_destinations ( 2&.google.api.Logging.LoggingDestination> +LoggingDestination +monitored_resource (  +logs ( Bn +com.google.apiB LoggingProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Metric.php b/vendor/Gcp/google/common-protos/metadata/Api/Metric.php new file mode 100644 index 0000000000000000000000000000000000000000..0975116f8d93250cd6d58b1c1ff998e769db3a10 GIT binary patch literal 1977 zcmb_d|8C+&5H5t!FpvnjRpWB%X`7xJqBhW`KSi#sAo!4VfKdafu0paFdvR80Y}Y?3 z(JIeUsZY?S>T`5PNzL5n)XJW0ZXY%Q(Q~PX*=TQ0FF-R?B1QU9H7V{Y23dA^Dut zRW7a8zmh>FX`HbWvZg3}VwPrcu*SHNX^4|IBz|wXr+qqO$aY+x;mCafGyElOr+o(d30*`!vm+Ms&_zW>y6@jIyzQCBZ7*w0sPMpJNouiLXPvCH1jDIvQ?3d=SYfpxkBjdt+VH(})TUrTrd+kZjsOH3H*XWPi)x359a4{K7 z`t7lKWmI>Leu2_j;~Kno)$UIWd;Dr-Y{Bh8p<`Kng=P-NUw?^c0L88~>GTmvd|x7$ zVXs=ys!-{gV%3?9O>0=)6%+>6(0ElX9%WEeIowTx=;M;s*qVf=w{^p@Ty?P;h{Ooe zcv(AzvYZdK)XK2)nk`o|whz0q)1?HZR{q;u$A$xZ?KUtwWko|?F{9ki->e4D3w;`R zjWG6_9t)&sO?8Asl8u+}d?8=0Kl6oNdt}av()5etPghs^`fh#j_E(n5@CI(+A4`L3 Ai2wiq literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/MonitoredResource.php b/vendor/Gcp/google/common-protos/metadata/Api/MonitoredResource.php new file mode 100644 index 00000000..e5b1f7ed --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/MonitoredResource.php @@ -0,0 +1,45 @@ +internalAddGeneratedFile(' + +#google/api/monitored_resource.proto +google.apigoogle/api/launch_stage.protogoogle/protobuf/struct.proto" +MonitoredResourceDescriptor +name (  +type (  + display_name (  + description ( + +labels ( 2.google.api.LabelDescriptor- + launch_stage (2.google.api.LaunchStage" +MonitoredResource +type ( 9 +labels ( 2).google.api.MonitoredResource.LabelsEntry- + LabelsEntry +key (  +value ( :8" +MonitoredResourceMetadata. + system_labels ( 2.google.protobuf.StructJ + user_labels ( 25.google.api.MonitoredResourceMetadata.UserLabelsEntry1 +UserLabelsEntry +key (  +value ( :8By +com.google.apiBMonitoredResourceProtoPZCgoogle.golang.org/genproto/googleapis/api/monitoredres;monitoredresGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Monitoring.php b/vendor/Gcp/google/common-protos/metadata/Api/Monitoring.php new file mode 100644 index 00000000..8b094714 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Monitoring.php @@ -0,0 +1,30 @@ +internalAddGeneratedFile(' + +google/api/monitoring.proto +google.api" + +MonitoringK +producer_destinations ( 2,.google.api.Monitoring.MonitoringDestinationK +consumer_destinations ( 2,.google.api.Monitoring.MonitoringDestinationD +MonitoringDestination +monitored_resource (  +metrics ( Bq +com.google.apiBMonitoringProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Policy.php b/vendor/Gcp/google/common-protos/metadata/Api/Policy.php new file mode 100644 index 00000000..5046dfe5 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Policy.php @@ -0,0 +1,30 @@ +internalAddGeneratedFile(' + +google/api/policy.proto +google.api google/protobuf/descriptor.proto"S + FieldPolicy +selector (  +resource_permission (  + resource_type ( "S + MethodPolicy +selector ( 1 +request_policies ( 2.google.api.FieldPolicyBp +com.google.apiB PolicyProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Quota.php b/vendor/Gcp/google/common-protos/metadata/Api/Quota.php new file mode 100644 index 00000000..95320c72 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Quota.php @@ -0,0 +1,50 @@ +internalAddGeneratedFile(' + +google/api/quota.proto +google.api"] +Quota& +limits ( 2.google.api.QuotaLimit, + metric_rules ( 2.google.api.MetricRule" + +MetricRule +selector ( = + metric_costs ( 2\'.google.api.MetricRule.MetricCostsEntry2 +MetricCostsEntry +key (  +value (:8" + +QuotaLimit +name (  + description (  + default_limit ( + max_limit ( + free_tier ( +duration (  +metric (  +unit ( 2 +values + ( 2".google.api.QuotaLimit.ValuesEntry + display_name ( - + ValuesEntry +key (  +value (:8Bl +com.google.apiB +QuotaProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Resource.php b/vendor/Gcp/google/common-protos/metadata/Api/Resource.php new file mode 100644 index 0000000000000000000000000000000000000000..84ca069509703dd1617350dda73566c0f79aca92 GIT binary patch literal 1193 zcma)5U2oGc6s29afd!=tATlH*Qzq6)&`O&SsN+NFns$-8HcC@ap;F`~PHHK$qr`bA zXn%%(#|zIq;yC>nj0y6RXoC&HHE;0q_)dF~u?B*n`tKQ@Si3hsAC_Q=wmvr*4BRwu>kYp^N1C=bBS&>oAb-+@JCTR-V(mS!6tbf;q( zdcWNpR|?gaU}vd?g~ct!Vu}BdTd3>KNa#7zf?_5?i-NMa&XW!dFpG&#QX{j*T`RxEWj)0l3_x}*K)i}hV^>b0Am LXXc3)-~#*tAY6Ah literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Routing.php b/vendor/Gcp/google/common-protos/metadata/Api/Routing.php new file mode 100644 index 00000000..9a93f563 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Routing.php @@ -0,0 +1,28 @@ +internalAddGeneratedFile(' + +google/api/routing.proto +google.api google/protobuf/descriptor.proto"G + RoutingRule8 +routing_parameters ( 2.google.api.RoutingParameter"8 +RoutingParameter +field (  + path_template ( Bj +com.google.apiB RoutingProtoPZAgoogle.golang.org/genproto/googleapis/api/annotations;annotationsGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Service.php b/vendor/Gcp/google/common-protos/metadata/Api/Service.php new file mode 100644 index 00000000..ad2a5a3a --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Service.php @@ -0,0 +1,75 @@ +internalAddGeneratedFile(' + +google/api/service.proto +google.apigoogle/api/backend.protogoogle/api/billing.protogoogle/api/client.protogoogle/api/context.protogoogle/api/control.protogoogle/api/documentation.protogoogle/api/endpoint.protogoogle/api/http.protogoogle/api/log.protogoogle/api/logging.protogoogle/api/metric.proto#google/api/monitored_resource.protogoogle/api/monitoring.protogoogle/api/quota.protogoogle/api/source_info.proto!google/api/system_parameter.protogoogle/api/usage.protogoogle/protobuf/api.protogoogle/protobuf/type.protogoogle/protobuf/wrappers.proto" +Service +name (  +title (  +producer_project_id (  + +id! ( " +apis ( 2.google.protobuf.Api$ +types ( 2.google.protobuf.Type$ +enums ( 2.google.protobuf.Enum0 + documentation ( 2.google.api.Documentation$ +backend ( 2.google.api.Backend +http ( 2.google.api.Http +quota + ( 2.google.api.Quota2 +authentication ( 2.google.api.Authentication$ +context ( 2.google.api.Context +usage ( 2.google.api.Usage\' + endpoints ( 2.google.api.Endpoint$ +control ( 2.google.api.Control\' +logs ( 2.google.api.LogDescriptor- +metrics ( 2.google.api.MetricDescriptorD +monitored_resources ( 2\'.google.api.MonitoredResourceDescriptor$ +billing ( 2.google.api.Billing$ +logging ( 2.google.api.Logging* + +monitoring ( 2.google.api.Monitoring7 +system_parameters ( 2.google.api.SystemParameters+ + source_info% ( 2.google.api.SourceInfo* + +publishing- ( 2.google.api.Publishing4 +config_version ( 2.google.protobuf.UInt32ValueBn +com.google.apiB ServiceProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/SourceInfo.php b/vendor/Gcp/google/common-protos/metadata/Api/SourceInfo.php new file mode 100644 index 00000000..45ee57cc --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/SourceInfo.php @@ -0,0 +1,27 @@ +internalAddGeneratedFile(' + +google/api/source_info.proto +google.api"8 + +SourceInfo* + source_files ( 2.google.protobuf.AnyBq +com.google.apiBSourceInfoProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/SystemParameter.php b/vendor/Gcp/google/common-protos/metadata/Api/SystemParameter.php new file mode 100644 index 00000000..f70020cb --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/SystemParameter.php @@ -0,0 +1,33 @@ +internalAddGeneratedFile(' + +!google/api/system_parameter.proto +google.api"B +SystemParameters. +rules ( 2.google.api.SystemParameterRule"X +SystemParameterRule +selector ( / + +parameters ( 2.google.api.SystemParameter"Q +SystemParameter +name (  + http_header (  +url_query_parameter ( Bv +com.google.apiBSystemParameterProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Usage.php b/vendor/Gcp/google/common-protos/metadata/Api/Usage.php new file mode 100644 index 00000000..45da98b2 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Usage.php @@ -0,0 +1,32 @@ +internalAddGeneratedFile(' + +google/api/usage.proto +google.api"j +Usage + requirements ( $ +rules ( 2.google.api.UsageRule% +producer_notification_channel ( "] + UsageRule +selector (  +allow_unregistered_calls ( +skip_service_control (Bl +com.google.apiB +UsageProtoPZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Api/Visibility.php b/vendor/Gcp/google/common-protos/metadata/Api/Visibility.php new file mode 100644 index 00000000..e2f18abc --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Api/Visibility.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +google/api/visibility.proto +google.api google/protobuf/descriptor.proto"7 + +Visibility) +rules ( 2.google.api.VisibilityRule"7 +VisibilityRule +selector (  + restriction ( Bn +com.google.apiBVisibilityProtoPZ?google.golang.org/genproto/googleapis/api/visibility;visibilityGAPIbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Cloud/ExtendedOperations.php b/vendor/Gcp/google/common-protos/metadata/Cloud/ExtendedOperations.php new file mode 100644 index 0000000000000000000000000000000000000000..ce41f54c1b1111e39f0229f43e300f5eeba18bb3 GIT binary patch literal 920 zcma)4U2oGc6lJBFz+x!m1;mpP6KfH)4|_}bP}^ixAKFB1CnOZ9a-EyZl4o1CBQa3_ z41a{bhLdzHVjwL~v3>73_uO+nd{$Qqq1Si<0yMFZ;mr-USAdn4R#M6Frp$BDn96I# zIOrb6VT|YT3P<5|^~$vxS!xOaE~G3t^eLBR)`xEvLtBrsv#B>I^DXe!L6`Qm2|6d z828iA%$-y#b?Z#0!h#lryKX}@Q&#H4;RQhfc5g&=)9E(jRg^5pokmL#+!5m@vATpV zK8#rPXt1Rg2aIhkqk5?Yy#K^@lMJ(LPkiBQ?wp}tE%fGomikYcx?XMl%iAE-c00NK zY_GD3z}pRav3G0X!r;OIGolm|g@1w`U(UnmVmgmP?}7gawdccG-ziJ@lWUljb~&mdoKJ^4g;tY`tOs3r89C!(17E8J3ZqXL~2LGNh AZvX%Q literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Cloud/Location/Locations.php b/vendor/Gcp/google/common-protos/metadata/Cloud/Location/Locations.php new file mode 100644 index 00000000..f8e43523 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Cloud/Location/Locations.php @@ -0,0 +1,48 @@ +internalAddGeneratedFile(' + +%google/cloud/location/locations.protogoogle.cloud.locationgoogle/protobuf/any.protogoogle/api/client.proto"[ +ListLocationsRequest +name (  +filter (  + page_size ( + +page_token ( "d +ListLocationsResponse2 + locations ( 2.google.cloud.location.Location +next_page_token ( "" +GetLocationRequest +name ( " +Location +name (  + location_id (  + display_name ( ; +labels ( 2+.google.cloud.location.Location.LabelsEntry& +metadata ( 2.google.protobuf.Any- + LabelsEntry +key (  +value ( :82 + Locations + ListLocations+.google.cloud.location.ListLocationsRequest,.google.cloud.location.ListLocationsResponse"?9/v1/{name=locations}Z!/v1/{name=projects/*}/locations + GetLocation).google.cloud.location.GetLocationRequest.google.cloud.location.Location"C=/v1/{name=locations/*}Z#!/v1/{name=projects/*/locations/*}HAcloud.googleapis.comA.https://www.googleapis.com/auth/cloud-platformBo +com.google.cloud.locationBLocationsProtoPZ=google.golang.org/genproto/googleapis/cloud/location;locationbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Iam/V1/IamPolicy.php b/vendor/Gcp/google/common-protos/metadata/Iam/V1/IamPolicy.php new file mode 100644 index 00000000..c65d68f6 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Iam/V1/IamPolicy.php @@ -0,0 +1,48 @@ +internalAddGeneratedFile(' + +google/iam/v1/iam_policy.proto google.iam.v1google/api/client.protogoogle/api/field_behavior.protogoogle/api/resource.protogoogle/iam/v1/options.protogoogle/iam/v1/policy.proto google/protobuf/field_mask.proto" +SetIamPolicyRequest +resource ( B AA +** +policy ( 2.google.iam.v1.PolicyBA/ + update_mask ( 2.google.protobuf.FieldMask"d +GetIamPolicyRequest +resource ( B AA +*0 +options ( 2.google.iam.v1.GetPolicyOptions"R +TestIamPermissionsRequest +resource ( B AA +* + permissions ( BA"1 +TestIamPermissionsResponse + permissions ( 2 + IAMPolicyt + SetIamPolicy".google.iam.v1.SetIamPolicyRequest.google.iam.v1.Policy")#"/v1/{resource=**}:setIamPolicy:*t + GetIamPolicy".google.iam.v1.GetIamPolicyRequest.google.iam.v1.Policy")#"/v1/{resource=**}:getIamPolicy:* +TestIamPermissions(.google.iam.v1.TestIamPermissionsRequest).google.iam.v1.TestIamPermissionsResponse"/)"$/v1/{resource=**}:testIamPermissions:*Aiam-meta-api.googleapis.comB +com.google.iam.v1BIamPolicyProtoPZ)cloud.google.com/go/iam/apiv1/iampb;iampbGoogle.Cloud.Iam.V1Google\\Cloud\\Iam\\V1bproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Iam/V1/Logging/AuditData.php b/vendor/Gcp/google/common-protos/metadata/Iam/V1/Logging/AuditData.php new file mode 100644 index 00000000..8824f431 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Iam/V1/Logging/AuditData.php @@ -0,0 +1,25 @@ +internalAddGeneratedFile(' + +&google/iam/v1/logging/audit_data.protogoogle.iam.v1.logging"= + AuditData0 + policy_delta ( 2.google.iam.v1.PolicyDeltaB +com.google.iam.v1.loggingBAuditDataProtoPZ9cloud.google.com/go/iam/apiv1/logging/loggingpb;loggingpbGoogle.Cloud.Iam.V1.Loggingbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Iam/V1/Options.php b/vendor/Gcp/google/common-protos/metadata/Iam/V1/Options.php new file mode 100644 index 00000000..0b9b17c1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Iam/V1/Options.php @@ -0,0 +1,24 @@ +internalAddGeneratedFile(' + +google/iam/v1/options.proto google.iam.v1"4 +GetPolicyOptions +requested_policy_version (B} +com.google.iam.v1B OptionsProtoPZ)cloud.google.com/go/iam/apiv1/iampb;iampbGoogle.Cloud.Iam.V1Google\\Cloud\\Iam\\V1bproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Iam/V1/Policy.php b/vendor/Gcp/google/common-protos/metadata/Iam/V1/Policy.php new file mode 100644 index 0000000000000000000000000000000000000000..9b3a166cec329fd4ad2d2ec87b157d5f0b87ca80 GIT binary patch literal 1852 zcmbVNU2hvj6lLS!)YnPsY*Dd_5W^CvBf&;?#fO{%TE}i=sj;o#rUk9E8t;zXk=8q_ z{fHVM5)b?j-uVMO@dx-tJaT8oj^iys6@FN2XYM_7&bfEzKK?d-83TMoPFTbenz4XP zE=l&1kvI{V@I^=_`E<$>;){9ALzdWtbcbXx9FtzRKmHI?Q;{b=Ym=D}vydHfIzPN< z9>yZ%{-v#8Afj`Y#?)t|%W#>CJnbZuN2&XKJzo=dO2d>L{Y&gL zkNk{_h{%LtgNzM+)ilWR(Se7Tz3gb%2kUMWk{B_62moamDui~WL zUb(Y6K^gPeH+-Sc34&`uPq0rK58<~8Jh;6l%pJXFW53uJP3u+iG>@92$|wgk)-BqK0#jf4aBUN`%u9{5J&Qq$<@~0@|X<0v!!>| z3#i^a3{g^+TyTF0`xWeI!l9U5lP)RJ?=R7`L$<r3XBa7V(((-rI8 z*2n*eVI!I>vss54d&TB4e*fN@O6v@^RzdGP9iDjO??*lF+2FfT@3{Y@-|N=iGIs%- z?rDGEo%Nh<&5-Y1XY6>-&-&wDZNuDwih5VuCF>Uhs=CzpQDxM81iOp!dVyR>k-RMO zdj;}~!sw*Oa8DbjE4|E=wW+o~C}b+1v~Mcg`qO~zHMka(sk#al##se~o58lDB4y{O z2HC*kS5S0WTc?_#&>x$(^~dK>UZC9v(>WgZhl7H-TTpVk(p7-+S?_dsj*d$HwW28V zi-Lwv3L1(DOC2|wQcHOk?iSi%p{aJG!K9>$_5b*Heuh09DC_(>i>6Sw=g9cszz;

internalAddGeneratedFile(' + +&google/logging/type/http_request.protogoogle.logging.type" + HttpRequest +request_method (  + request_url (  + request_size ( +status ( + response_size ( + +user_agent (  + remote_ip (  + server_ip (  +referer ( * +latency ( 2.google.protobuf.Duration + cache_lookup ( + cache_hit (* +"cache_validated_with_origin_server + ( +cache_fill_bytes ( +protocol ( B +com.google.logging.typeBHttpRequestProtoPZ8google.golang.org/genproto/googleapis/logging/type;ltypeGoogle.Cloud.Logging.TypeGoogle\\Cloud\\Logging\\TypeGoogle::Cloud::Logging::Typebproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Logging/Type/LogSeverity.php b/vendor/Gcp/google/common-protos/metadata/Logging/Type/LogSeverity.php new file mode 100644 index 0000000000000000000000000000000000000000..9df3634f030ff26716aca3e8020d5b6c942f6b50 GIT binary patch literal 1006 zcma)5-D=c86n1ypt(~fbcp-upBNn?Wn!WHwQh(T=Y*^TCmbj%Tfn_$Cqyy8LFqsIe z^u{L;pFq46AHiEed;*`rYahUw$=X(`(A*?5=R42jJ7DO%`QxY(Ago_--7!EKcG2vy=6Ns=PI+)IbG^HFR^F5pp6!~!;`P1GWmMB3| zolS>mTy=3b-F-1iI)#dY5Bk%@5_2lJ3)rW;dQoXiGF(-^jf+%^d#(V;!6wyKz zIFC(B7E8hz)CmELajR`mRb7qW&beBRs&TOyD&AAQQnk)##3U9BQI%c9g5;8msjBC? z8I~tP=$lr%qNiJu6t=2aT=(2Ciis2@Zo^ZGI!9nx3U*rK*o>hgW`GAz$%;ugNlqFM zmCUUj@V)`=UQAN^dWCaV(mPuEdv9xC>x?M&7T6eg!|wigW?iy3!TP}K?fX`uKG#N* zVPJi$DM(WpYt;9w&vp9>*f{8hlhMSt-Zg9h*1a$cLhDzJ`C zsu0Ra@t4PUsUG)Zea#;S{-^p)--zw>DK8U8wa`C~7@EbWsNM`^5 literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Rpc/Code.php b/vendor/Gcp/google/common-protos/metadata/Rpc/Code.php new file mode 100644 index 0000000000000000000000000000000000000000..7ad4779ec221c98706dfeddce6b3504f58a82438 GIT binary patch literal 1015 zcma)5TTk0C7#)RiF}GmG_UdU!lxb@pcq_ZeP23WZI#Djbrb>~Uy2Vn6qa=OUCjQL+ z#2)w8W+#X~j7iH&lF#QmKIgl9_?+M70K7p%p7DZJe2OODP<6{uUdT!&GDVZcY{myicZ)pfCUVLEp!%)y4J+_`M2_p6nO|O}L{P`Sw=}tm&G= zbnkG_16c5~pTE=q-!5(&eh5MpFb`S=}y3X{7KeB_sc4=%8YOBl*cnJ0* zilgvC@!KX2RnUMh0rW}WM!uSGiH$vXV*u{(%;OoznSh6i9bqV~vhh_<0XJ8%bV+UnD%*fDnDKG;?&t`s-!JH*)2hAbT7 z*l~lv*zezfJ+(5OWi9(#x{&pdcq?De9uDR*W!bzVi+Oj>vwCH^%@NB*`M6BydZT`} dR(;Q$tkinternalAddGeneratedFile(' + +*google/rpc/context/attribute_context.protogoogle.rpc.contextgoogle/protobuf/duration.protogoogle/protobuf/struct.protogoogle/protobuf/timestamp.proto" +AttributeContext9 +origin ( 2).google.rpc.context.AttributeContext.Peer9 +source ( 2).google.rpc.context.AttributeContext.Peer> + destination ( 2).google.rpc.context.AttributeContext.Peer= +request ( 2,.google.rpc.context.AttributeContext.Request? +response ( 2-.google.rpc.context.AttributeContext.Response? +resource ( 2-.google.rpc.context.AttributeContext.Resource5 +api ( 2(.google.rpc.context.AttributeContext.Api( + +extensions ( 2.google.protobuf.Any +Peer + +ip (  +port (E +labels ( 25.google.rpc.context.AttributeContext.Peer.LabelsEntry + principal (  + region_code ( - + LabelsEntry +key (  +value ( :8L +Api +service (  + operation (  +protocol (  +version (  +Auth + principal (  + audiences (  + presenter ( \' +claims ( 2.google.protobuf.Struct + access_levels (  +Request + +id (  +method ( J +headers ( 29.google.rpc.context.AttributeContext.Request.HeadersEntry +path (  +host (  +scheme (  +query ( ( +time ( 2.google.protobuf.Timestamp +size + ( +protocol (  +reason ( 7 +auth ( 2).google.rpc.context.AttributeContext.Auth. + HeadersEntry +key (  +value ( :8 +Response +code ( +size (K +headers ( 2:.google.rpc.context.AttributeContext.Response.HeadersEntry( +time ( 2.google.protobuf.Timestamp2 +backend_latency ( 2.google.protobuf.Duration. + HeadersEntry +key (  +value ( :8 +Resource +service (  +name (  +type ( I +labels ( 29.google.rpc.context.AttributeContext.Resource.LabelsEntry +uid ( S + annotations ( 2>.google.rpc.context.AttributeContext.Resource.AnnotationsEntry + display_name ( / + create_time ( 2.google.protobuf.Timestamp/ + update_time ( 2.google.protobuf.Timestamp/ + delete_time + ( 2.google.protobuf.Timestamp +etag (  +location ( - + LabelsEntry +key (  +value ( :82 +AnnotationsEntry +key (  +value ( :8B +com.google.rpc.contextBAttributeContextProtoPZUgoogle.golang.org/genproto/googleapis/rpc/context/attribute_context;attribute_contextbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Rpc/Context/AuditContext.php b/vendor/Gcp/google/common-protos/metadata/Rpc/Context/AuditContext.php new file mode 100644 index 00000000..9cddb7b6 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Rpc/Context/AuditContext.php @@ -0,0 +1,29 @@ +internalAddGeneratedFile(' + +&google/rpc/context/audit_context.protogoogle.rpc.context" + AuditContext + audit_log ( 1 +scrubbed_request ( 2.google.protobuf.Struct2 +scrubbed_response ( 2.google.protobuf.Struct$ +scrubbed_response_item_count ( +target_resource ( Bk +com.google.rpc.contextBAuditContextProtoPZ9google.golang.org/genproto/googleapis/rpc/context;contextbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Rpc/ErrorDetails.php b/vendor/Gcp/google/common-protos/metadata/Rpc/ErrorDetails.php new file mode 100644 index 00000000..d37bbb7e --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Rpc/ErrorDetails.php @@ -0,0 +1,72 @@ +internalAddGeneratedFile(' + +google/rpc/error_details.proto +google.rpc" + ErrorInfo +reason (  +domain ( 5 +metadata ( 2#.google.rpc.ErrorInfo.MetadataEntry/ + MetadataEntry +key (  +value ( :8"; + RetryInfo. + retry_delay ( 2.google.protobuf.Duration"2 + DebugInfo + stack_entries (  +detail ( "y + QuotaFailure6 + +violations ( 2".google.rpc.QuotaFailure.Violation1 + Violation +subject (  + description ( " +PreconditionFailure= + +violations ( 2).google.rpc.PreconditionFailure.Violation? + Violation +type (  +subject (  + description ( " + +BadRequest? +field_violations ( 2%.google.rpc.BadRequest.FieldViolation4 +FieldViolation +field (  + description ( "7 + RequestInfo + +request_id (  + serving_data ( "` + ResourceInfo + resource_type (  + resource_name (  +owner (  + description ( "V +Help$ +links ( 2.google.rpc.Help.Link( +Link + description (  +url ( "3 +LocalizedMessage +locale (  +message ( Bl +com.google.rpcBErrorDetailsProtoPZ?google.golang.org/genproto/googleapis/rpc/errdetails;errdetailsRPCbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Rpc/Status.php b/vendor/Gcp/google/common-protos/metadata/Rpc/Status.php new file mode 100644 index 00000000..71dd12b9 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Rpc/Status.php @@ -0,0 +1,28 @@ +internalAddGeneratedFile(' + +google/rpc/status.proto +google.rpc"N +Status +code ( +message ( % +details ( 2.google.protobuf.AnyBa +com.google.rpcB StatusProtoPZ7google.golang.org/genproto/googleapis/rpc/status;statusRPCbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/CalendarPeriod.php b/vendor/Gcp/google/common-protos/metadata/Type/CalendarPeriod.php new file mode 100644 index 0000000000000000000000000000000000000000..0f6094c553a4e40289663fc39dced5dd934622dc GIT binary patch literal 898 zcma)4U2oGc6lLwUGEYDh9(lkMlhz_=ANJPqp|nZch_wkJ(=-$*auX-BSdSoZ^AH6?l*!idl+eEU+Xz?bm96p&MKXlwfFM zN)p1$Vk8k^MRe)MUY1dg(s+(jf}&|6qNzWcV}(+r^tl#~LM?sU)KQN z0Mw5tms%PY3Mu_MCPhpbQ3O%)RX6t*Mj4`o*0_(&N|q?X8LS8%OK`VWqZ-``e=N8j zh}QT&`;BG48l)a#j6UWUVa&1fe| zmbeEu7Aua#s+4S_v8vmsZt4bJzawiWR+`=wp6GD9C*Wrb9Q`v$^RR*RtE^vs2amUt zFrR~GW9!^m*j5nxPT+cWe6jfCJ7ag^I=1n^?0~jyT^T#(L$G`4I3J9b`3M|LydYe- z(^+V=%>%GE_ZH#I*fkG9=i`MHgic`WRfL&!J~8&IuPet2jLzr_c%rwn|A(j1(``p} z2L8_H*&35`idf#~G9Toa)yp|(u8<(b_6j!}eD-^zo8ymGdm8%7{hE4u@@gH#X6Ap* LtU)%w6internalAddGeneratedFile(' + +google/type/color.proto google.type"] +Color +red ( +green ( +blue (* +alpha ( 2.google.protobuf.FloatValueB` +com.google.typeB +ColorProtoPZ6google.golang.org/genproto/googleapis/type/color;colorGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Date.php b/vendor/Gcp/google/common-protos/metadata/Type/Date.php new file mode 100644 index 00000000..21285f0e --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Date.php @@ -0,0 +1,26 @@ +internalAddGeneratedFile(' + +google/type/date.proto google.type"0 +Date +year ( +month ( +day (B] +com.google.typeB DateProtoPZ4google.golang.org/genproto/googleapis/type/date;dateGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Datetime.php b/vendor/Gcp/google/common-protos/metadata/Type/Datetime.php new file mode 100644 index 0000000000000000000000000000000000000000..31f464eacca94caec14011715f51ac26d8fb53ce GIT binary patch literal 1099 zcma)5(Q4Z;6m62GO_YT~VBqaZ>k3K6=D_ymb{h-X(mr&_Lts!0L9wqLfg>479;72b zv!{L5K4Xu&mg8h26zUfv-FuJDIXb%fm@ZR7UeYlLP|QF`7i(&kKvN}+3}iwVSrmby zfn23L0p(IUn$WM48T~xEnZ3YKEi)B>M`J1D1O{fE!XQK_!&l&17$VpTbjkvtBS?6_ zWu}LUaiRTh)A=Nd63N2(Ergu;;~@3N)8Q=`h9J1MsQwI5F9`_}rZpXH(a8@&@k_G> zf>Ldm!QTbfb1t~yEaCU4=RNf!mS~(l?2R%J7%m0P2PPtbUf*^VxOx9YD$xVPcpUM9 z>@@cdee-XG0VP<1(>hQ*HBwCx&+}q1JIC{#UcaE1AIT%yE3|mtff!_BR0e&zrI2)Z- zQFHU$od2$nMt-|9%ueSCIbH)(PK8!_^-i1AS5lazQ?<($sfBFq)XLftQ>dL|yF4SO zD=snv+NqZt8UiUo?VOYYf(faeQ@b1xl9^yGqez2s8o1Yb`^?=Evk}JIbW0}Y31%}OEQ)T6R|5*JcvP9%7dcBQm+4hl$ZFh?Cbnfsr;hVvFI!sH)KQp0)z@#y#N3J literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Dayofweek.php b/vendor/Gcp/google/common-protos/metadata/Type/Dayofweek.php new file mode 100644 index 0000000000000000000000000000000000000000..11441aef258c75fe4cbfc82099664ca49ad03005 GIT binary patch literal 872 zcma)4O>fgc5G5(3bjwHO3x{47QK<=nP>N7AoL86fPo+i61-Ytbq%->T=AIacvYq;2psd9 zg61H)7&{)GdI5Hwaqv`AB`-w`HqJQDa_Fgb0lkE*dHNaPQ@7GVjNE`MNDSD4oW_)w zav%t0GF%0kl5i9k;m99MK#_zfU01SUpk*%+igO|*c7DmDuL$d>C|6n) zOGT7^olzN4MinJF{h}v&jl-1WQqynurX`CNW#L~(T^rN{m1sK;~MOm)jt2$Ku0=%FJ0>OTBqoV z)Bg~8!)WQc@1w+!RggAv#*R&a^HMtOw|R z@NO}yz`KSuoQ+N6J%h~q!D42rmO#Lct4^|4L!_YckCVOJ9q;$%!6@)ot%`7Q{$iW_KIFeHsqU;BH)w-?0xgUa*8l(j literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Decimal.php b/vendor/Gcp/google/common-protos/metadata/Type/Decimal.php new file mode 100644 index 00000000..8760ee68 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Decimal.php @@ -0,0 +1,24 @@ +internalAddGeneratedFile(' + +google/type/decimal.proto google.type" +Decimal +value ( Bf +com.google.typeB DecimalProtoPZ:google.golang.org/genproto/googleapis/type/decimal;decimalGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Expr.php b/vendor/Gcp/google/common-protos/metadata/Type/Expr.php new file mode 100644 index 00000000..c1b7bae8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Expr.php @@ -0,0 +1,28 @@ +internalAddGeneratedFile(' + +google/type/expr.proto google.type"P +Expr + +expression (  +title (  + description (  +location ( BZ +com.google.typeB ExprProtoPZ4google.golang.org/genproto/googleapis/type/expr;exprGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Fraction.php b/vendor/Gcp/google/common-protos/metadata/Type/Fraction.php new file mode 100644 index 00000000..1e4a8e11 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Fraction.php @@ -0,0 +1,25 @@ +internalAddGeneratedFile(' + +google/type/fraction.proto google.type"2 +Fraction + numerator ( + denominator (Bf +com.google.typeB FractionProtoPZinternalAddGeneratedFile(' + +google/type/interval.proto google.type"h +Interval. + +start_time ( 2.google.protobuf.Timestamp, +end_time ( 2.google.protobuf.TimestampBi +com.google.typeB IntervalProtoPZinternalAddGeneratedFile(' + +google/type/latlng.proto google.type"- +LatLng +latitude ( + longitude (Bc +com.google.typeB LatLngProtoPZ8google.golang.org/genproto/googleapis/type/latlng;latlngGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/LocalizedText.php b/vendor/Gcp/google/common-protos/metadata/Type/LocalizedText.php new file mode 100644 index 00000000..c1a87d86 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/LocalizedText.php @@ -0,0 +1,25 @@ +internalAddGeneratedFile(' + + google/type/localized_text.proto google.type"4 + LocalizedText +text (  + language_code ( Bz +com.google.typeBLocalizedTextProtoPZHgoogle.golang.org/genproto/googleapis/type/localized_text;localized_textGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Money.php b/vendor/Gcp/google/common-protos/metadata/Type/Money.php new file mode 100644 index 00000000..2ac17e58 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Money.php @@ -0,0 +1,27 @@ +internalAddGeneratedFile(' + +google/type/money.proto google.type"< +Money + currency_code (  +units ( +nanos (B` +com.google.typeB +MoneyProtoPZ6google.golang.org/genproto/googleapis/type/money;moneyGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Month.php b/vendor/Gcp/google/common-protos/metadata/Type/Month.php new file mode 100644 index 0000000000000000000000000000000000000000..d8261157dba897513c98c0a35acabd214bd979d3 GIT binary patch literal 892 zcma)4+iKfD5UuURmvu^2LFwz324a`iekk<8=>^G_9f!ygw%p>PV%E}1UXXXiYW0v7 z|4hH2pU_Y1u4Ljs2vjf9Xy%-mGiN@2Nw+Bgui*q!%#pw$+}uL3#W3Yeuz)3SlSdKe zFkrisB$)Rg96502c+eV6y;l;Nv785Z0At4D1oy>liu*f8#kN;)0E%`vOHqK~2qz>U zEYD1i2+jO&?%Ii>grRV4WGeQh_-|i9}}sC#hiEm3)IijK$rq)t^qc98a|*5$u#&27?D;iF-a+t&j!@I^~>15{u{H=nQkGQ6{%S2Dv`Q}droECf6Ux4Sf zGxM(2%h|%UhSTxX8fj1THfUTMv!yX#X%+npG{=@XFQTg6l2BtlywYmw({Sh08|_4I zfSPTrv{StaPOg_TORJY(H!H2715h`XljXwGn)*}FT3D`U*`_tuTB?yV^c)oc)oA8? zEmLh3jjUlAotZztGkLPTdn!y&NGL3FE8jmHQZY*qjeCs8{TS2YWcy_br6jv|&X>he e|E|_1p1Y|Rh3_xk9$YyZ@Th@hWm&ifd+-nM1`nM8 literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Type/PhoneNumber.php b/vendor/Gcp/google/common-protos/metadata/Type/PhoneNumber.php new file mode 100644 index 0000000000000000000000000000000000000000..7d84e03fb53f46470895e544610b9639c7ad951f GIT binary patch literal 930 zcma)4U5nE|6g6EbbP9e{gyMsY>%z96>H2|4*AJ}Kx(~YzSP&#orjwg=Fr67@Cg3Xl zGrszZ{3kwoGbwGLDCQ+3_uO;Nz30Aot(TgR`*Z>l40Djs#U*u1pxP*>xXS6GNK-JB ztCbcxn2^%(lwM3{^xgPub`M*vDh!7q&6LV=7`RIf1HDud=CW8Vu)|Xk$yQ)B<3Pud z3ocY)M}`S$<4@6inx?s8$^0A=!Qu(m@gy3ZgJTJE`0bhF88V*|!gFRVjY@?JFF?K% zijOW9$V;tb4qr#Y&V>|Cuv~n@v0lGK%8DQ0;VZFm@+L{P!tXKG-ZA;rAb0;AVW(Zy!!qK-p8;vtLg?Hk zZFuzT=_d4UK!aZE!td8yW@Nv?hoG8s8?9WS`9JGxO5_EAN_=kdl^ zrgA2;P?>Cyf%FGFs7g!=yMN=Sx_0otgWyNwU^0sqP2c(C_`xQwT{3@7wnA3GHCdBC DMx8GA literal 0 HcmV?d00001 diff --git a/vendor/Gcp/google/common-protos/metadata/Type/PostalAddress.php b/vendor/Gcp/google/common-protos/metadata/Type/PostalAddress.php new file mode 100644 index 00000000..fcdfff92 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/PostalAddress.php @@ -0,0 +1,36 @@ +internalAddGeneratedFile(' + + google/type/postal_address.proto google.type" + PostalAddress +revision ( + region_code (  + language_code (  + postal_code (  + sorting_code (  +administrative_area (  +locality (  + sublocality (  + address_lines (  + +recipients + (  + organization ( Bx +com.google.typeBPostalAddressProtoPZFgoogle.golang.org/genproto/googleapis/type/postaladdress;postaladdressGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Quaternion.php b/vendor/Gcp/google/common-protos/metadata/Type/Quaternion.php new file mode 100644 index 00000000..dd88a457 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Quaternion.php @@ -0,0 +1,28 @@ +internalAddGeneratedFile(' + +google/type/quaternion.proto google.type"8 + +Quaternion +x ( +y ( +z ( +w (Bo +com.google.typeBQuaternionProtoPZ@google.golang.org/genproto/googleapis/type/quaternion;quaternionGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/metadata/Type/Timeofday.php b/vendor/Gcp/google/common-protos/metadata/Type/Timeofday.php new file mode 100644 index 00000000..c7927239 --- /dev/null +++ b/vendor/Gcp/google/common-protos/metadata/Type/Timeofday.php @@ -0,0 +1,27 @@ +internalAddGeneratedFile(' + +google/type/timeofday.proto google.type"K + TimeOfDay +hours ( +minutes ( +seconds ( +nanos (Bl +com.google.typeBTimeOfDayProtoPZ>google.golang.org/genproto/googleapis/type/timeofday;timeofdayGTPbproto3', \true); + static::$is_initialized = \true; + } +} diff --git a/vendor/Gcp/google/common-protos/owlbot.py b/vendor/Gcp/google/common-protos/owlbot.py new file mode 100644 index 00000000..67cd532b --- /dev/null +++ b/vendor/Gcp/google/common-protos/owlbot.py @@ -0,0 +1,80 @@ +# Copyright 2022 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""This script is used to synthesize generated parts of this library.""" + +import logging +from pathlib import Path +import shutil +import subprocess + +import os +import synthtool as s +from synthtool.languages import php +from synthtool import _tracked_paths + +logging.basicConfig(level=logging.DEBUG) + +# (dirname, version) +protos = [ + ("api", "api"), + ("extendedoperations", "cloud"), + ("location", "cloud"), + ("logging", "google"), # for the metadata + ("logging", "cloud"), + ("iam", "google"), # for the metadata + ("iam", "cloud"), + ("iamlogging", "iam"), + ("rpc", "rpc"), + ("type", "type"), +] + +dest = Path().resolve() +for proto in protos: + src = Path(f"{php.STAGING_DIR}/{proto[0]}").resolve() + + # Added so that we can pass copy_excludes in the owlbot_main() call + _tracked_paths.add(src) + + # use owlbot_copy_version instead of owlbot_main and set "version_string" + # manually because common protos do not have a version + php.owlbot_copy_version( + src=src, + dest=dest, + version_string=proto[1], + copy_excludes=[ + src / "**/[A-Z]*_*.php" + ], + ) + +# move metadata to more specific directories (owlbot isnt smart enough to do this) +s.move("metadata/Google/Iam/V1", "metadata/Iam/V1") +s.move("metadata/Google/Logging/Type", "metadata/Logging/Type") + +# remove owl-bot-staging dir +if os.path.exists(php.STAGING_DIR): + shutil.rmtree(Path(php.STAGING_DIR)) + +# remove the metadata/Google files that we copied +if os.path.exists("metadata/Google"): + shutil.rmtree(Path("metadata/Google")) + +s.replace( + "src/**/*.php", + r"^// Adding a class alias for backwards compatibility with the previous class name.$" + + "\n" + + r"^class_alias\(.*\);$" + + "\n", + '') + diff --git a/vendor/Gcp/google/common-protos/renovate.json b/vendor/Gcp/google/common-protos/renovate.json new file mode 100644 index 00000000..6d812132 --- /dev/null +++ b/vendor/Gcp/google/common-protos/renovate.json @@ -0,0 +1,7 @@ +{ + "extends": [ + "config:base", + ":preserveSemverRanges", + ":disableDependencyDashboard" + ] +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Advice.php b/vendor/Gcp/google/common-protos/src/Api/Advice.php new file mode 100644 index 00000000..844f843f --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Advice.php @@ -0,0 +1,66 @@ +google.api.Advice + */ +class Advice extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Useful description for why this advice was applied and what actions should + * be taken to mitigate any implied risks. + * + * Generated from protobuf field string description = 2; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $description + * Useful description for why this advice was applied and what actions should + * be taken to mitigate any implied risks. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\ConfigChange::initOnce(); + parent::__construct($data); + } + /** + * Useful description for why this advice was applied and what actions should + * be taken to mitigate any implied risks. + * + * Generated from protobuf field string description = 2; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Useful description for why this advice was applied and what actions should + * be taken to mitigate any implied risks. + * + * Generated from protobuf field string description = 2; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/AuthProvider.php b/vendor/Gcp/google/common-protos/src/Api/AuthProvider.php new file mode 100644 index 00000000..167f9896 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/AuthProvider.php @@ -0,0 +1,398 @@ +google.api.AuthProvider + */ +class AuthProvider extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The unique identifier of the auth provider. It will be referred to by + * `AuthRequirement.provider_id`. + * Example: "bookstore_auth". + * + * Generated from protobuf field string id = 1; + */ + protected $id = ''; + /** + * Identifies the principal that issued the JWT. See + * https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 + * Usually a URL or an email address. + * Example: https://securetoken.google.com + * Example: 1234567-compute@developer.gserviceaccount.com + * + * Generated from protobuf field string issuer = 2; + */ + protected $issuer = ''; + /** + * URL of the provider's public key set to validate signature of the JWT. See + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). + * Optional if the key set document: + * - can be retrieved from + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html) + * of the issuer. + * - can be inferred from the email domain of the issuer (e.g. a Google + * service account). + * Example: https://www.googleapis.com/oauth2/v1/certs + * + * Generated from protobuf field string jwks_uri = 3; + */ + protected $jwks_uri = ''; + /** + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, JWTs with audiences: + * - "https://[service.name]/[google.protobuf.Api.name]" + * - "https://[service.name]/" + * will be accepted. + * For example, if no audiences are in the setting, LibraryService API will + * accept JWTs with the following audiences: + * - + * https://library-example.googleapis.com/google.example.library.v1.LibraryService + * - https://library-example.googleapis.com/ + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 4; + */ + protected $audiences = ''; + /** + * Redirect URL if JWT token is required but not present or is expired. + * Implement authorizationUrl of securityDefinitions in OpenAPI spec. + * + * Generated from protobuf field string authorization_url = 5; + */ + protected $authorization_url = ''; + /** + * Defines the locations to extract the JWT. For now it is only used by the + * Cloud Endpoints to store the OpenAPI extension [x-google-jwt-locations] + * (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations) + * JWT locations can be one of HTTP headers, URL query parameters or + * cookies. The rule is that the first match wins. + * If not specified, default to use following 3 locations: + * 1) Authorization: Bearer + * 2) x-goog-iap-jwt-assertion + * 3) access_token query parameter + * Default locations can be specified as followings: + * jwt_locations: + * - header: Authorization + * value_prefix: "Bearer " + * - header: x-goog-iap-jwt-assertion + * - query: access_token + * + * Generated from protobuf field repeated .google.api.JwtLocation jwt_locations = 6; + */ + private $jwt_locations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $id + * The unique identifier of the auth provider. It will be referred to by + * `AuthRequirement.provider_id`. + * Example: "bookstore_auth". + * @type string $issuer + * Identifies the principal that issued the JWT. See + * https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 + * Usually a URL or an email address. + * Example: https://securetoken.google.com + * Example: 1234567-compute@developer.gserviceaccount.com + * @type string $jwks_uri + * URL of the provider's public key set to validate signature of the JWT. See + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). + * Optional if the key set document: + * - can be retrieved from + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html) + * of the issuer. + * - can be inferred from the email domain of the issuer (e.g. a Google + * service account). + * Example: https://www.googleapis.com/oauth2/v1/certs + * @type string $audiences + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, JWTs with audiences: + * - "https://[service.name]/[google.protobuf.Api.name]" + * - "https://[service.name]/" + * will be accepted. + * For example, if no audiences are in the setting, LibraryService API will + * accept JWTs with the following audiences: + * - + * https://library-example.googleapis.com/google.example.library.v1.LibraryService + * - https://library-example.googleapis.com/ + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * @type string $authorization_url + * Redirect URL if JWT token is required but not present or is expired. + * Implement authorizationUrl of securityDefinitions in OpenAPI spec. + * @type array<\Google\Api\JwtLocation>|\Google\Protobuf\Internal\RepeatedField $jwt_locations + * Defines the locations to extract the JWT. For now it is only used by the + * Cloud Endpoints to store the OpenAPI extension [x-google-jwt-locations] + * (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations) + * JWT locations can be one of HTTP headers, URL query parameters or + * cookies. The rule is that the first match wins. + * If not specified, default to use following 3 locations: + * 1) Authorization: Bearer + * 2) x-goog-iap-jwt-assertion + * 3) access_token query parameter + * Default locations can be specified as followings: + * jwt_locations: + * - header: Authorization + * value_prefix: "Bearer " + * - header: x-goog-iap-jwt-assertion + * - query: access_token + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * The unique identifier of the auth provider. It will be referred to by + * `AuthRequirement.provider_id`. + * Example: "bookstore_auth". + * + * Generated from protobuf field string id = 1; + * @return string + */ + public function getId() + { + return $this->id; + } + /** + * The unique identifier of the auth provider. It will be referred to by + * `AuthRequirement.provider_id`. + * Example: "bookstore_auth". + * + * Generated from protobuf field string id = 1; + * @param string $var + * @return $this + */ + public function setId($var) + { + GPBUtil::checkString($var, True); + $this->id = $var; + return $this; + } + /** + * Identifies the principal that issued the JWT. See + * https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 + * Usually a URL or an email address. + * Example: https://securetoken.google.com + * Example: 1234567-compute@developer.gserviceaccount.com + * + * Generated from protobuf field string issuer = 2; + * @return string + */ + public function getIssuer() + { + return $this->issuer; + } + /** + * Identifies the principal that issued the JWT. See + * https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 + * Usually a URL or an email address. + * Example: https://securetoken.google.com + * Example: 1234567-compute@developer.gserviceaccount.com + * + * Generated from protobuf field string issuer = 2; + * @param string $var + * @return $this + */ + public function setIssuer($var) + { + GPBUtil::checkString($var, True); + $this->issuer = $var; + return $this; + } + /** + * URL of the provider's public key set to validate signature of the JWT. See + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). + * Optional if the key set document: + * - can be retrieved from + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html) + * of the issuer. + * - can be inferred from the email domain of the issuer (e.g. a Google + * service account). + * Example: https://www.googleapis.com/oauth2/v1/certs + * + * Generated from protobuf field string jwks_uri = 3; + * @return string + */ + public function getJwksUri() + { + return $this->jwks_uri; + } + /** + * URL of the provider's public key set to validate signature of the JWT. See + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). + * Optional if the key set document: + * - can be retrieved from + * [OpenID + * Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html) + * of the issuer. + * - can be inferred from the email domain of the issuer (e.g. a Google + * service account). + * Example: https://www.googleapis.com/oauth2/v1/certs + * + * Generated from protobuf field string jwks_uri = 3; + * @param string $var + * @return $this + */ + public function setJwksUri($var) + { + GPBUtil::checkString($var, True); + $this->jwks_uri = $var; + return $this; + } + /** + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, JWTs with audiences: + * - "https://[service.name]/[google.protobuf.Api.name]" + * - "https://[service.name]/" + * will be accepted. + * For example, if no audiences are in the setting, LibraryService API will + * accept JWTs with the following audiences: + * - + * https://library-example.googleapis.com/google.example.library.v1.LibraryService + * - https://library-example.googleapis.com/ + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 4; + * @return string + */ + public function getAudiences() + { + return $this->audiences; + } + /** + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, JWTs with audiences: + * - "https://[service.name]/[google.protobuf.Api.name]" + * - "https://[service.name]/" + * will be accepted. + * For example, if no audiences are in the setting, LibraryService API will + * accept JWTs with the following audiences: + * - + * https://library-example.googleapis.com/google.example.library.v1.LibraryService + * - https://library-example.googleapis.com/ + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 4; + * @param string $var + * @return $this + */ + public function setAudiences($var) + { + GPBUtil::checkString($var, True); + $this->audiences = $var; + return $this; + } + /** + * Redirect URL if JWT token is required but not present or is expired. + * Implement authorizationUrl of securityDefinitions in OpenAPI spec. + * + * Generated from protobuf field string authorization_url = 5; + * @return string + */ + public function getAuthorizationUrl() + { + return $this->authorization_url; + } + /** + * Redirect URL if JWT token is required but not present or is expired. + * Implement authorizationUrl of securityDefinitions in OpenAPI spec. + * + * Generated from protobuf field string authorization_url = 5; + * @param string $var + * @return $this + */ + public function setAuthorizationUrl($var) + { + GPBUtil::checkString($var, True); + $this->authorization_url = $var; + return $this; + } + /** + * Defines the locations to extract the JWT. For now it is only used by the + * Cloud Endpoints to store the OpenAPI extension [x-google-jwt-locations] + * (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations) + * JWT locations can be one of HTTP headers, URL query parameters or + * cookies. The rule is that the first match wins. + * If not specified, default to use following 3 locations: + * 1) Authorization: Bearer + * 2) x-goog-iap-jwt-assertion + * 3) access_token query parameter + * Default locations can be specified as followings: + * jwt_locations: + * - header: Authorization + * value_prefix: "Bearer " + * - header: x-goog-iap-jwt-assertion + * - query: access_token + * + * Generated from protobuf field repeated .google.api.JwtLocation jwt_locations = 6; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getJwtLocations() + { + return $this->jwt_locations; + } + /** + * Defines the locations to extract the JWT. For now it is only used by the + * Cloud Endpoints to store the OpenAPI extension [x-google-jwt-locations] + * (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations) + * JWT locations can be one of HTTP headers, URL query parameters or + * cookies. The rule is that the first match wins. + * If not specified, default to use following 3 locations: + * 1) Authorization: Bearer + * 2) x-goog-iap-jwt-assertion + * 3) access_token query parameter + * Default locations can be specified as followings: + * jwt_locations: + * - header: Authorization + * value_prefix: "Bearer " + * - header: x-goog-iap-jwt-assertion + * - query: access_token + * + * Generated from protobuf field repeated .google.api.JwtLocation jwt_locations = 6; + * @param array<\Google\Api\JwtLocation>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setJwtLocations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\JwtLocation::class); + $this->jwt_locations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/AuthRequirement.php b/vendor/Gcp/google/common-protos/src/Api/AuthRequirement.php new file mode 100644 index 00000000..9a980715 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/AuthRequirement.php @@ -0,0 +1,150 @@ +google.api.AuthRequirement + */ +class AuthRequirement extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * [id][google.api.AuthProvider.id] from authentication provider. + * Example: + * provider_id: bookstore_auth + * + * Generated from protobuf field string provider_id = 1; + */ + protected $provider_id = ''; + /** + * NOTE: This will be deprecated soon, once AuthProvider.audiences is + * implemented and accepted in all the runtime components. + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, only JWTs with audience + * "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" + * will be accepted. For example, if no audiences are in the setting, + * LibraryService API will only accept JWTs with the following audience + * "https://library-example.googleapis.com/google.example.library.v1.LibraryService". + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 2; + */ + protected $audiences = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $provider_id + * [id][google.api.AuthProvider.id] from authentication provider. + * Example: + * provider_id: bookstore_auth + * @type string $audiences + * NOTE: This will be deprecated soon, once AuthProvider.audiences is + * implemented and accepted in all the runtime components. + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, only JWTs with audience + * "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" + * will be accepted. For example, if no audiences are in the setting, + * LibraryService API will only accept JWTs with the following audience + * "https://library-example.googleapis.com/google.example.library.v1.LibraryService". + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * [id][google.api.AuthProvider.id] from authentication provider. + * Example: + * provider_id: bookstore_auth + * + * Generated from protobuf field string provider_id = 1; + * @return string + */ + public function getProviderId() + { + return $this->provider_id; + } + /** + * [id][google.api.AuthProvider.id] from authentication provider. + * Example: + * provider_id: bookstore_auth + * + * Generated from protobuf field string provider_id = 1; + * @param string $var + * @return $this + */ + public function setProviderId($var) + { + GPBUtil::checkString($var, True); + $this->provider_id = $var; + return $this; + } + /** + * NOTE: This will be deprecated soon, once AuthProvider.audiences is + * implemented and accepted in all the runtime components. + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, only JWTs with audience + * "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" + * will be accepted. For example, if no audiences are in the setting, + * LibraryService API will only accept JWTs with the following audience + * "https://library-example.googleapis.com/google.example.library.v1.LibraryService". + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 2; + * @return string + */ + public function getAudiences() + { + return $this->audiences; + } + /** + * NOTE: This will be deprecated soon, once AuthProvider.audiences is + * implemented and accepted in all the runtime components. + * The list of JWT + * [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + * that are allowed to access. A JWT containing any of these audiences will + * be accepted. When this setting is absent, only JWTs with audience + * "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" + * will be accepted. For example, if no audiences are in the setting, + * LibraryService API will only accept JWTs with the following audience + * "https://library-example.googleapis.com/google.example.library.v1.LibraryService". + * Example: + * audiences: bookstore_android.apps.googleusercontent.com, + * bookstore_web.apps.googleusercontent.com + * + * Generated from protobuf field string audiences = 2; + * @param string $var + * @return $this + */ + public function setAudiences($var) + { + GPBUtil::checkString($var, True); + $this->audiences = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Authentication.php b/vendor/Gcp/google/common-protos/src/Api/Authentication.php new file mode 100644 index 00000000..45526bfe --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Authentication.php @@ -0,0 +1,111 @@ +google.api.Authentication + */ +class Authentication extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of authentication rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.AuthenticationRule rules = 3; + */ + private $rules; + /** + * Defines a set of authentication providers that a service supports. + * + * Generated from protobuf field repeated .google.api.AuthProvider providers = 4; + */ + private $providers; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\AuthenticationRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of authentication rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * @type array<\Google\Api\AuthProvider>|\Google\Protobuf\Internal\RepeatedField $providers + * Defines a set of authentication providers that a service supports. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * A list of authentication rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.AuthenticationRule rules = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of authentication rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.AuthenticationRule rules = 3; + * @param array<\Google\Api\AuthenticationRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\AuthenticationRule::class); + $this->rules = $arr; + return $this; + } + /** + * Defines a set of authentication providers that a service supports. + * + * Generated from protobuf field repeated .google.api.AuthProvider providers = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getProviders() + { + return $this->providers; + } + /** + * Defines a set of authentication providers that a service supports. + * + * Generated from protobuf field repeated .google.api.AuthProvider providers = 4; + * @param array<\Google\Api\AuthProvider>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setProviders($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\AuthProvider::class); + $this->providers = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/AuthenticationRule.php b/vendor/Gcp/google/common-protos/src/Api/AuthenticationRule.php new file mode 100644 index 00000000..c307ec46 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/AuthenticationRule.php @@ -0,0 +1,180 @@ +google.api.AuthenticationRule + */ +class AuthenticationRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * The requirements for OAuth credentials. + * + * Generated from protobuf field .google.api.OAuthRequirements oauth = 2; + */ + protected $oauth = null; + /** + * If true, the service accepts API keys without any other credential. + * This flag only applies to HTTP and gRPC requests. + * + * Generated from protobuf field bool allow_without_credential = 5; + */ + protected $allow_without_credential = \false; + /** + * Requirements for additional authentication providers. + * + * Generated from protobuf field repeated .google.api.AuthRequirement requirements = 7; + */ + private $requirements; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type \Google\Api\OAuthRequirements $oauth + * The requirements for OAuth credentials. + * @type bool $allow_without_credential + * If true, the service accepts API keys without any other credential. + * This flag only applies to HTTP and gRPC requests. + * @type array<\Google\Api\AuthRequirement>|\Google\Protobuf\Internal\RepeatedField $requirements + * Requirements for additional authentication providers. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * The requirements for OAuth credentials. + * + * Generated from protobuf field .google.api.OAuthRequirements oauth = 2; + * @return \Google\Api\OAuthRequirements|null + */ + public function getOauth() + { + return $this->oauth; + } + public function hasOauth() + { + return isset($this->oauth); + } + public function clearOauth() + { + unset($this->oauth); + } + /** + * The requirements for OAuth credentials. + * + * Generated from protobuf field .google.api.OAuthRequirements oauth = 2; + * @param \Google\Api\OAuthRequirements $var + * @return $this + */ + public function setOauth($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\OAuthRequirements::class); + $this->oauth = $var; + return $this; + } + /** + * If true, the service accepts API keys without any other credential. + * This flag only applies to HTTP and gRPC requests. + * + * Generated from protobuf field bool allow_without_credential = 5; + * @return bool + */ + public function getAllowWithoutCredential() + { + return $this->allow_without_credential; + } + /** + * If true, the service accepts API keys without any other credential. + * This flag only applies to HTTP and gRPC requests. + * + * Generated from protobuf field bool allow_without_credential = 5; + * @param bool $var + * @return $this + */ + public function setAllowWithoutCredential($var) + { + GPBUtil::checkBool($var); + $this->allow_without_credential = $var; + return $this; + } + /** + * Requirements for additional authentication providers. + * + * Generated from protobuf field repeated .google.api.AuthRequirement requirements = 7; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRequirements() + { + return $this->requirements; + } + /** + * Requirements for additional authentication providers. + * + * Generated from protobuf field repeated .google.api.AuthRequirement requirements = 7; + * @param array<\Google\Api\AuthRequirement>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRequirements($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\AuthRequirement::class); + $this->requirements = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Backend.php b/vendor/Gcp/google/common-protos/src/Api/Backend.php new file mode 100644 index 00000000..28726844 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Backend.php @@ -0,0 +1,65 @@ +google.api.Backend + */ +class Backend extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of API backend rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.BackendRule rules = 1; + */ + private $rules; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\BackendRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of API backend rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Backend::initOnce(); + parent::__construct($data); + } + /** + * A list of API backend rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.BackendRule rules = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of API backend rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.BackendRule rules = 1; + * @param array<\Google\Api\BackendRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\BackendRule::class); + $this->rules = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/BackendRule.php b/vendor/Gcp/google/common-protos/src/Api/BackendRule.php new file mode 100644 index 00000000..203136b8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/BackendRule.php @@ -0,0 +1,489 @@ +google.api.BackendRule + */ +class BackendRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * The address of the API backend. + * The scheme is used to determine the backend protocol and security. + * The following schemes are accepted: + * SCHEME PROTOCOL SECURITY + * http:// HTTP None + * https:// HTTP TLS + * grpc:// gRPC None + * grpcs:// gRPC TLS + * It is recommended to explicitly include a scheme. Leaving out the scheme + * may cause constrasting behaviors across platforms. + * If the port is unspecified, the default is: + * - 80 for schemes without TLS + * - 443 for schemes with TLS + * For HTTP backends, use [protocol][google.api.BackendRule.protocol] + * to specify the protocol version. + * + * Generated from protobuf field string address = 2; + */ + protected $address = ''; + /** + * The number of seconds to wait for a response from a request. The default + * varies based on the request protocol and deployment environment. + * + * Generated from protobuf field double deadline = 3; + */ + protected $deadline = 0.0; + /** + * Deprecated, do not use. + * + * Generated from protobuf field double min_deadline = 4 [deprecated = true]; + * @deprecated + */ + protected $min_deadline = 0.0; + /** + * The number of seconds to wait for the completion of a long running + * operation. The default is no deadline. + * + * Generated from protobuf field double operation_deadline = 5; + */ + protected $operation_deadline = 0.0; + /** + * Generated from protobuf field .google.api.BackendRule.PathTranslation path_translation = 6; + */ + protected $path_translation = 0; + /** + * The protocol used for sending a request to the backend. + * The supported values are "http/1.1" and "h2". + * The default value is inferred from the scheme in the + * [address][google.api.BackendRule.address] field: + * SCHEME PROTOCOL + * http:// http/1.1 + * https:// http/1.1 + * grpc:// h2 + * grpcs:// h2 + * For secure HTTP backends (https://) that support HTTP/2, set this field + * to "h2" for improved performance. + * Configuring this field to non-default values is only supported for secure + * HTTP backends. This field will be ignored for all other backends. + * See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for more details on the supported values. + * + * Generated from protobuf field string protocol = 9; + */ + protected $protocol = ''; + /** + * The map between request protocol and the backend address. + * + * Generated from protobuf field map overrides_by_request_protocol = 10; + */ + private $overrides_by_request_protocol; + protected $authentication; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type string $address + * The address of the API backend. + * The scheme is used to determine the backend protocol and security. + * The following schemes are accepted: + * SCHEME PROTOCOL SECURITY + * http:// HTTP None + * https:// HTTP TLS + * grpc:// gRPC None + * grpcs:// gRPC TLS + * It is recommended to explicitly include a scheme. Leaving out the scheme + * may cause constrasting behaviors across platforms. + * If the port is unspecified, the default is: + * - 80 for schemes without TLS + * - 443 for schemes with TLS + * For HTTP backends, use [protocol][google.api.BackendRule.protocol] + * to specify the protocol version. + * @type float $deadline + * The number of seconds to wait for a response from a request. The default + * varies based on the request protocol and deployment environment. + * @type float $min_deadline + * Deprecated, do not use. + * @type float $operation_deadline + * The number of seconds to wait for the completion of a long running + * operation. The default is no deadline. + * @type int $path_translation + * @type string $jwt_audience + * The JWT audience is used when generating a JWT ID token for the backend. + * This ID token will be added in the HTTP "authorization" header, and sent + * to the backend. + * @type bool $disable_auth + * When disable_auth is true, a JWT ID token won't be generated and the + * original "Authorization" HTTP header will be preserved. If the header is + * used to carry the original token and is expected by the backend, this + * field must be set to true to preserve the header. + * @type string $protocol + * The protocol used for sending a request to the backend. + * The supported values are "http/1.1" and "h2". + * The default value is inferred from the scheme in the + * [address][google.api.BackendRule.address] field: + * SCHEME PROTOCOL + * http:// http/1.1 + * https:// http/1.1 + * grpc:// h2 + * grpcs:// h2 + * For secure HTTP backends (https://) that support HTTP/2, set this field + * to "h2" for improved performance. + * Configuring this field to non-default values is only supported for secure + * HTTP backends. This field will be ignored for all other backends. + * See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for more details on the supported values. + * @type array|\Google\Protobuf\Internal\MapField $overrides_by_request_protocol + * The map between request protocol and the backend address. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Backend::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * The address of the API backend. + * The scheme is used to determine the backend protocol and security. + * The following schemes are accepted: + * SCHEME PROTOCOL SECURITY + * http:// HTTP None + * https:// HTTP TLS + * grpc:// gRPC None + * grpcs:// gRPC TLS + * It is recommended to explicitly include a scheme. Leaving out the scheme + * may cause constrasting behaviors across platforms. + * If the port is unspecified, the default is: + * - 80 for schemes without TLS + * - 443 for schemes with TLS + * For HTTP backends, use [protocol][google.api.BackendRule.protocol] + * to specify the protocol version. + * + * Generated from protobuf field string address = 2; + * @return string + */ + public function getAddress() + { + return $this->address; + } + /** + * The address of the API backend. + * The scheme is used to determine the backend protocol and security. + * The following schemes are accepted: + * SCHEME PROTOCOL SECURITY + * http:// HTTP None + * https:// HTTP TLS + * grpc:// gRPC None + * grpcs:// gRPC TLS + * It is recommended to explicitly include a scheme. Leaving out the scheme + * may cause constrasting behaviors across platforms. + * If the port is unspecified, the default is: + * - 80 for schemes without TLS + * - 443 for schemes with TLS + * For HTTP backends, use [protocol][google.api.BackendRule.protocol] + * to specify the protocol version. + * + * Generated from protobuf field string address = 2; + * @param string $var + * @return $this + */ + public function setAddress($var) + { + GPBUtil::checkString($var, True); + $this->address = $var; + return $this; + } + /** + * The number of seconds to wait for a response from a request. The default + * varies based on the request protocol and deployment environment. + * + * Generated from protobuf field double deadline = 3; + * @return float + */ + public function getDeadline() + { + return $this->deadline; + } + /** + * The number of seconds to wait for a response from a request. The default + * varies based on the request protocol and deployment environment. + * + * Generated from protobuf field double deadline = 3; + * @param float $var + * @return $this + */ + public function setDeadline($var) + { + GPBUtil::checkDouble($var); + $this->deadline = $var; + return $this; + } + /** + * Deprecated, do not use. + * + * Generated from protobuf field double min_deadline = 4 [deprecated = true]; + * @return float + * @deprecated + */ + public function getMinDeadline() + { + @\trigger_error('min_deadline is deprecated.', \E_USER_DEPRECATED); + return $this->min_deadline; + } + /** + * Deprecated, do not use. + * + * Generated from protobuf field double min_deadline = 4 [deprecated = true]; + * @param float $var + * @return $this + * @deprecated + */ + public function setMinDeadline($var) + { + @\trigger_error('min_deadline is deprecated.', \E_USER_DEPRECATED); + GPBUtil::checkDouble($var); + $this->min_deadline = $var; + return $this; + } + /** + * The number of seconds to wait for the completion of a long running + * operation. The default is no deadline. + * + * Generated from protobuf field double operation_deadline = 5; + * @return float + */ + public function getOperationDeadline() + { + return $this->operation_deadline; + } + /** + * The number of seconds to wait for the completion of a long running + * operation. The default is no deadline. + * + * Generated from protobuf field double operation_deadline = 5; + * @param float $var + * @return $this + */ + public function setOperationDeadline($var) + { + GPBUtil::checkDouble($var); + $this->operation_deadline = $var; + return $this; + } + /** + * Generated from protobuf field .google.api.BackendRule.PathTranslation path_translation = 6; + * @return int + */ + public function getPathTranslation() + { + return $this->path_translation; + } + /** + * Generated from protobuf field .google.api.BackendRule.PathTranslation path_translation = 6; + * @param int $var + * @return $this + */ + public function setPathTranslation($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\BackendRule\PathTranslation::class); + $this->path_translation = $var; + return $this; + } + /** + * The JWT audience is used when generating a JWT ID token for the backend. + * This ID token will be added in the HTTP "authorization" header, and sent + * to the backend. + * + * Generated from protobuf field string jwt_audience = 7; + * @return string + */ + public function getJwtAudience() + { + return $this->readOneof(7); + } + public function hasJwtAudience() + { + return $this->hasOneof(7); + } + /** + * The JWT audience is used when generating a JWT ID token for the backend. + * This ID token will be added in the HTTP "authorization" header, and sent + * to the backend. + * + * Generated from protobuf field string jwt_audience = 7; + * @param string $var + * @return $this + */ + public function setJwtAudience($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(7, $var); + return $this; + } + /** + * When disable_auth is true, a JWT ID token won't be generated and the + * original "Authorization" HTTP header will be preserved. If the header is + * used to carry the original token and is expected by the backend, this + * field must be set to true to preserve the header. + * + * Generated from protobuf field bool disable_auth = 8; + * @return bool + */ + public function getDisableAuth() + { + return $this->readOneof(8); + } + public function hasDisableAuth() + { + return $this->hasOneof(8); + } + /** + * When disable_auth is true, a JWT ID token won't be generated and the + * original "Authorization" HTTP header will be preserved. If the header is + * used to carry the original token and is expected by the backend, this + * field must be set to true to preserve the header. + * + * Generated from protobuf field bool disable_auth = 8; + * @param bool $var + * @return $this + */ + public function setDisableAuth($var) + { + GPBUtil::checkBool($var); + $this->writeOneof(8, $var); + return $this; + } + /** + * The protocol used for sending a request to the backend. + * The supported values are "http/1.1" and "h2". + * The default value is inferred from the scheme in the + * [address][google.api.BackendRule.address] field: + * SCHEME PROTOCOL + * http:// http/1.1 + * https:// http/1.1 + * grpc:// h2 + * grpcs:// h2 + * For secure HTTP backends (https://) that support HTTP/2, set this field + * to "h2" for improved performance. + * Configuring this field to non-default values is only supported for secure + * HTTP backends. This field will be ignored for all other backends. + * See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for more details on the supported values. + * + * Generated from protobuf field string protocol = 9; + * @return string + */ + public function getProtocol() + { + return $this->protocol; + } + /** + * The protocol used for sending a request to the backend. + * The supported values are "http/1.1" and "h2". + * The default value is inferred from the scheme in the + * [address][google.api.BackendRule.address] field: + * SCHEME PROTOCOL + * http:// http/1.1 + * https:// http/1.1 + * grpc:// h2 + * grpcs:// h2 + * For secure HTTP backends (https://) that support HTTP/2, set this field + * to "h2" for improved performance. + * Configuring this field to non-default values is only supported for secure + * HTTP backends. This field will be ignored for all other backends. + * See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for more details on the supported values. + * + * Generated from protobuf field string protocol = 9; + * @param string $var + * @return $this + */ + public function setProtocol($var) + { + GPBUtil::checkString($var, True); + $this->protocol = $var; + return $this; + } + /** + * The map between request protocol and the backend address. + * + * Generated from protobuf field map overrides_by_request_protocol = 10; + * @return \Google\Protobuf\Internal\MapField + */ + public function getOverridesByRequestProtocol() + { + return $this->overrides_by_request_protocol; + } + /** + * The map between request protocol and the backend address. + * + * Generated from protobuf field map overrides_by_request_protocol = 10; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setOverridesByRequestProtocol($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\BackendRule::class); + $this->overrides_by_request_protocol = $arr; + return $this; + } + /** + * @return string + */ + public function getAuthentication() + { + return $this->whichOneof("authentication"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/BackendRule/PathTranslation.php b/vendor/Gcp/google/common-protos/src/Api/BackendRule/PathTranslation.php new file mode 100644 index 00000000..a3b63b8b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/BackendRule/PathTranslation.php @@ -0,0 +1,80 @@ +google.api.BackendRule.PathTranslation + */ +class PathTranslation +{ + /** + * Generated from protobuf enum PATH_TRANSLATION_UNSPECIFIED = 0; + */ + const PATH_TRANSLATION_UNSPECIFIED = 0; + /** + * Use the backend address as-is, with no modification to the path. If the + * URL pattern contains variables, the variable names and values will be + * appended to the query string. If a query string parameter and a URL + * pattern variable have the same name, this may result in duplicate keys in + * the query string. + * # Examples + * Given the following operation config: + * Method path: /api/company/{cid}/user/{uid} + * Backend address: https://example.cloudfunctions.net/getUser + * Requests to the following request paths will call the backend at the + * translated path: + * Request path: /api/company/widgetworks/user/johndoe + * Translated: + * https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe + * Request path: /api/company/widgetworks/user/johndoe?timezone=EST + * Translated: + * https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe + * + * Generated from protobuf enum CONSTANT_ADDRESS = 1; + */ + const CONSTANT_ADDRESS = 1; + /** + * The request path will be appended to the backend address. + * # Examples + * Given the following operation config: + * Method path: /api/company/{cid}/user/{uid} + * Backend address: https://example.appspot.com + * Requests to the following request paths will call the backend at the + * translated path: + * Request path: /api/company/widgetworks/user/johndoe + * Translated: + * https://example.appspot.com/api/company/widgetworks/user/johndoe + * Request path: /api/company/widgetworks/user/johndoe?timezone=EST + * Translated: + * https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST + * + * Generated from protobuf enum APPEND_PATH_TO_ADDRESS = 2; + */ + const APPEND_PATH_TO_ADDRESS = 2; + private static $valueToName = [self::PATH_TRANSLATION_UNSPECIFIED => 'PATH_TRANSLATION_UNSPECIFIED', self::CONSTANT_ADDRESS => 'CONSTANT_ADDRESS', self::APPEND_PATH_TO_ADDRESS => 'APPEND_PATH_TO_ADDRESS']; + 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/vendor/Gcp/google/common-protos/src/Api/Billing.php b/vendor/Gcp/google/common-protos/src/Api/Billing.php new file mode 100644 index 00000000..ccc577f4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Billing.php @@ -0,0 +1,101 @@ +google.api.Billing + */ +class Billing extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Billing configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations per service, each one must have + * a different monitored resource type. A metric can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Billing.BillingDestination consumer_destinations = 8; + */ + private $consumer_destinations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\Billing\BillingDestination>|\Google\Protobuf\Internal\RepeatedField $consumer_destinations + * Billing configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations per service, each one must have + * a different monitored resource type. A metric can be used in at most + * one consumer destination. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Billing::initOnce(); + parent::__construct($data); + } + /** + * Billing configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations per service, each one must have + * a different monitored resource type. A metric can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Billing.BillingDestination consumer_destinations = 8; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getConsumerDestinations() + { + return $this->consumer_destinations; + } + /** + * Billing configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations per service, each one must have + * a different monitored resource type. A metric can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Billing.BillingDestination consumer_destinations = 8; + * @param array<\Google\Api\Billing\BillingDestination>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setConsumerDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Billing\BillingDestination::class); + $this->consumer_destinations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Billing/BillingDestination.php b/vendor/Gcp/google/common-protos/src/Api/Billing/BillingDestination.php new file mode 100644 index 00000000..b492adc6 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Billing/BillingDestination.php @@ -0,0 +1,109 @@ +google.api.Billing.BillingDestination + */ +class BillingDestination extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + */ + protected $monitored_resource = ''; + /** + * Names of the metrics to report to this billing destination. + * Each name must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + */ + private $metrics; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $monitored_resource + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * @type array|\Google\Protobuf\Internal\RepeatedField $metrics + * Names of the metrics to report to this billing destination. + * Each name must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Billing::initOnce(); + parent::__construct($data); + } + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + * @return string + */ + public function getMonitoredResource() + { + return $this->monitored_resource; + } + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + * @param string $var + * @return $this + */ + public function setMonitoredResource($var) + { + GPBUtil::checkString($var, True); + $this->monitored_resource = $var; + return $this; + } + /** + * Names of the metrics to report to this billing destination. + * Each name must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMetrics() + { + return $this->metrics; + } + /** + * Names of the metrics to report to this billing destination. + * Each name must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMetrics($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->metrics = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ChangeType.php b/vendor/Gcp/google/common-protos/src/Api/ChangeType.php new file mode 100644 index 00000000..85a50ccc --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ChangeType.php @@ -0,0 +1,59 @@ +google.api.ChangeType + */ +class ChangeType +{ + /** + * No value was provided. + * + * Generated from protobuf enum CHANGE_TYPE_UNSPECIFIED = 0; + */ + const CHANGE_TYPE_UNSPECIFIED = 0; + /** + * The changed object exists in the 'new' service configuration, but not + * in the 'old' service configuration. + * + * Generated from protobuf enum ADDED = 1; + */ + const ADDED = 1; + /** + * The changed object exists in the 'old' service configuration, but not + * in the 'new' service configuration. + * + * Generated from protobuf enum REMOVED = 2; + */ + const REMOVED = 2; + /** + * The changed object exists in both service configurations, but its value + * is different. + * + * Generated from protobuf enum MODIFIED = 3; + */ + const MODIFIED = 3; + private static $valueToName = [self::CHANGE_TYPE_UNSPECIFIED => 'CHANGE_TYPE_UNSPECIFIED', self::ADDED => 'ADDED', self::REMOVED => 'REMOVED', self::MODIFIED => 'MODIFIED']; + 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/vendor/Gcp/google/common-protos/src/Api/ClientLibraryDestination.php b/vendor/Gcp/google/common-protos/src/Api/ClientLibraryDestination.php new file mode 100644 index 00000000..33859178 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ClientLibraryDestination.php @@ -0,0 +1,51 @@ +google.api.ClientLibraryDestination + */ +class ClientLibraryDestination +{ + /** + * Client libraries will neither be generated nor published to package + * managers. + * + * Generated from protobuf enum CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0; + */ + const CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0; + /** + * Generate the client library in a repo under github.com/googleapis, + * but don't publish it to package managers. + * + * Generated from protobuf enum GITHUB = 10; + */ + const GITHUB = 10; + /** + * Publish the library to package managers like nuget.org and npmjs.com. + * + * Generated from protobuf enum PACKAGE_MANAGER = 20; + */ + const PACKAGE_MANAGER = 20; + private static $valueToName = [self::CLIENT_LIBRARY_DESTINATION_UNSPECIFIED => 'CLIENT_LIBRARY_DESTINATION_UNSPECIFIED', self::GITHUB => 'GITHUB', self::PACKAGE_MANAGER => 'PACKAGE_MANAGER']; + 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/vendor/Gcp/google/common-protos/src/Api/ClientLibraryOrganization.php b/vendor/Gcp/google/common-protos/src/Api/ClientLibraryOrganization.php new file mode 100644 index 00000000..d0debe99 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ClientLibraryOrganization.php @@ -0,0 +1,80 @@ +google.api.ClientLibraryOrganization + */ +class ClientLibraryOrganization +{ + /** + * Not useful. + * + * Generated from protobuf enum CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0; + */ + const CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0; + /** + * Google Cloud Platform Org. + * + * Generated from protobuf enum CLOUD = 1; + */ + const CLOUD = 1; + /** + * Ads (Advertising) Org. + * + * Generated from protobuf enum ADS = 2; + */ + const ADS = 2; + /** + * Photos Org. + * + * Generated from protobuf enum PHOTOS = 3; + */ + const PHOTOS = 3; + /** + * Street View Org. + * + * Generated from protobuf enum STREET_VIEW = 4; + */ + const STREET_VIEW = 4; + /** + * Shopping Org. + * + * Generated from protobuf enum SHOPPING = 5; + */ + const SHOPPING = 5; + /** + * Geo Org. + * + * Generated from protobuf enum GEO = 6; + */ + const GEO = 6; + /** + * Generative AI - https://developers.generativeai.google + * + * Generated from protobuf enum GENERATIVE_AI = 7; + */ + const GENERATIVE_AI = 7; + private static $valueToName = [self::CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED => 'CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED', self::CLOUD => 'CLOUD', self::ADS => 'ADS', self::PHOTOS => 'PHOTOS', self::STREET_VIEW => 'STREET_VIEW', self::SHOPPING => 'SHOPPING', self::GEO => 'GEO', self::GENERATIVE_AI => 'GENERATIVE_AI']; + 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/vendor/Gcp/google/common-protos/src/Api/ClientLibrarySettings.php b/vendor/Gcp/google/common-protos/src/Api/ClientLibrarySettings.php new file mode 100644 index 00000000..8ad65a09 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ClientLibrarySettings.php @@ -0,0 +1,447 @@ +google.api.ClientLibrarySettings + */ +class ClientLibrarySettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Version of the API to apply these settings to. This is the full protobuf + * package for the API, ending in the version element. + * Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1". + * + * Generated from protobuf field string version = 1; + */ + protected $version = ''; + /** + * Launch stage of this version of the API. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 2; + */ + protected $launch_stage = 0; + /** + * When using transport=rest, the client request will encode enums as + * numbers rather than strings. + * + * Generated from protobuf field bool rest_numeric_enums = 3; + */ + protected $rest_numeric_enums = \false; + /** + * Settings for legacy Java features, supported in the Service YAML. + * + * Generated from protobuf field .google.api.JavaSettings java_settings = 21; + */ + protected $java_settings = null; + /** + * Settings for C++ client libraries. + * + * Generated from protobuf field .google.api.CppSettings cpp_settings = 22; + */ + protected $cpp_settings = null; + /** + * Settings for PHP client libraries. + * + * Generated from protobuf field .google.api.PhpSettings php_settings = 23; + */ + protected $php_settings = null; + /** + * Settings for Python client libraries. + * + * Generated from protobuf field .google.api.PythonSettings python_settings = 24; + */ + protected $python_settings = null; + /** + * Settings for Node client libraries. + * + * Generated from protobuf field .google.api.NodeSettings node_settings = 25; + */ + protected $node_settings = null; + /** + * Settings for .NET client libraries. + * + * Generated from protobuf field .google.api.DotnetSettings dotnet_settings = 26; + */ + protected $dotnet_settings = null; + /** + * Settings for Ruby client libraries. + * + * Generated from protobuf field .google.api.RubySettings ruby_settings = 27; + */ + protected $ruby_settings = null; + /** + * Settings for Go client libraries. + * + * Generated from protobuf field .google.api.GoSettings go_settings = 28; + */ + protected $go_settings = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $version + * Version of the API to apply these settings to. This is the full protobuf + * package for the API, ending in the version element. + * Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1". + * @type int $launch_stage + * Launch stage of this version of the API. + * @type bool $rest_numeric_enums + * When using transport=rest, the client request will encode enums as + * numbers rather than strings. + * @type \Google\Api\JavaSettings $java_settings + * Settings for legacy Java features, supported in the Service YAML. + * @type \Google\Api\CppSettings $cpp_settings + * Settings for C++ client libraries. + * @type \Google\Api\PhpSettings $php_settings + * Settings for PHP client libraries. + * @type \Google\Api\PythonSettings $python_settings + * Settings for Python client libraries. + * @type \Google\Api\NodeSettings $node_settings + * Settings for Node client libraries. + * @type \Google\Api\DotnetSettings $dotnet_settings + * Settings for .NET client libraries. + * @type \Google\Api\RubySettings $ruby_settings + * Settings for Ruby client libraries. + * @type \Google\Api\GoSettings $go_settings + * Settings for Go client libraries. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Version of the API to apply these settings to. This is the full protobuf + * package for the API, ending in the version element. + * Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1". + * + * Generated from protobuf field string version = 1; + * @return string + */ + public function getVersion() + { + return $this->version; + } + /** + * Version of the API to apply these settings to. This is the full protobuf + * package for the API, ending in the version element. + * Examples: "google.cloud.speech.v1" and "google.spanner.admin.database.v1". + * + * Generated from protobuf field string version = 1; + * @param string $var + * @return $this + */ + public function setVersion($var) + { + GPBUtil::checkString($var, True); + $this->version = $var; + return $this; + } + /** + * Launch stage of this version of the API. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 2; + * @return int + */ + public function getLaunchStage() + { + return $this->launch_stage; + } + /** + * Launch stage of this version of the API. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 2; + * @param int $var + * @return $this + */ + public function setLaunchStage($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LaunchStage::class); + $this->launch_stage = $var; + return $this; + } + /** + * When using transport=rest, the client request will encode enums as + * numbers rather than strings. + * + * Generated from protobuf field bool rest_numeric_enums = 3; + * @return bool + */ + public function getRestNumericEnums() + { + return $this->rest_numeric_enums; + } + /** + * When using transport=rest, the client request will encode enums as + * numbers rather than strings. + * + * Generated from protobuf field bool rest_numeric_enums = 3; + * @param bool $var + * @return $this + */ + public function setRestNumericEnums($var) + { + GPBUtil::checkBool($var); + $this->rest_numeric_enums = $var; + return $this; + } + /** + * Settings for legacy Java features, supported in the Service YAML. + * + * Generated from protobuf field .google.api.JavaSettings java_settings = 21; + * @return \Google\Api\JavaSettings|null + */ + public function getJavaSettings() + { + return $this->java_settings; + } + public function hasJavaSettings() + { + return isset($this->java_settings); + } + public function clearJavaSettings() + { + unset($this->java_settings); + } + /** + * Settings for legacy Java features, supported in the Service YAML. + * + * Generated from protobuf field .google.api.JavaSettings java_settings = 21; + * @param \Google\Api\JavaSettings $var + * @return $this + */ + public function setJavaSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\JavaSettings::class); + $this->java_settings = $var; + return $this; + } + /** + * Settings for C++ client libraries. + * + * Generated from protobuf field .google.api.CppSettings cpp_settings = 22; + * @return \Google\Api\CppSettings|null + */ + public function getCppSettings() + { + return $this->cpp_settings; + } + public function hasCppSettings() + { + return isset($this->cpp_settings); + } + public function clearCppSettings() + { + unset($this->cpp_settings); + } + /** + * Settings for C++ client libraries. + * + * Generated from protobuf field .google.api.CppSettings cpp_settings = 22; + * @param \Google\Api\CppSettings $var + * @return $this + */ + public function setCppSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CppSettings::class); + $this->cpp_settings = $var; + return $this; + } + /** + * Settings for PHP client libraries. + * + * Generated from protobuf field .google.api.PhpSettings php_settings = 23; + * @return \Google\Api\PhpSettings|null + */ + public function getPhpSettings() + { + return $this->php_settings; + } + public function hasPhpSettings() + { + return isset($this->php_settings); + } + public function clearPhpSettings() + { + unset($this->php_settings); + } + /** + * Settings for PHP client libraries. + * + * Generated from protobuf field .google.api.PhpSettings php_settings = 23; + * @param \Google\Api\PhpSettings $var + * @return $this + */ + public function setPhpSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\PhpSettings::class); + $this->php_settings = $var; + return $this; + } + /** + * Settings for Python client libraries. + * + * Generated from protobuf field .google.api.PythonSettings python_settings = 24; + * @return \Google\Api\PythonSettings|null + */ + public function getPythonSettings() + { + return $this->python_settings; + } + public function hasPythonSettings() + { + return isset($this->python_settings); + } + public function clearPythonSettings() + { + unset($this->python_settings); + } + /** + * Settings for Python client libraries. + * + * Generated from protobuf field .google.api.PythonSettings python_settings = 24; + * @param \Google\Api\PythonSettings $var + * @return $this + */ + public function setPythonSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\PythonSettings::class); + $this->python_settings = $var; + return $this; + } + /** + * Settings for Node client libraries. + * + * Generated from protobuf field .google.api.NodeSettings node_settings = 25; + * @return \Google\Api\NodeSettings|null + */ + public function getNodeSettings() + { + return $this->node_settings; + } + public function hasNodeSettings() + { + return isset($this->node_settings); + } + public function clearNodeSettings() + { + unset($this->node_settings); + } + /** + * Settings for Node client libraries. + * + * Generated from protobuf field .google.api.NodeSettings node_settings = 25; + * @param \Google\Api\NodeSettings $var + * @return $this + */ + public function setNodeSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\NodeSettings::class); + $this->node_settings = $var; + return $this; + } + /** + * Settings for .NET client libraries. + * + * Generated from protobuf field .google.api.DotnetSettings dotnet_settings = 26; + * @return \Google\Api\DotnetSettings|null + */ + public function getDotnetSettings() + { + return $this->dotnet_settings; + } + public function hasDotnetSettings() + { + return isset($this->dotnet_settings); + } + public function clearDotnetSettings() + { + unset($this->dotnet_settings); + } + /** + * Settings for .NET client libraries. + * + * Generated from protobuf field .google.api.DotnetSettings dotnet_settings = 26; + * @param \Google\Api\DotnetSettings $var + * @return $this + */ + public function setDotnetSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\DotnetSettings::class); + $this->dotnet_settings = $var; + return $this; + } + /** + * Settings for Ruby client libraries. + * + * Generated from protobuf field .google.api.RubySettings ruby_settings = 27; + * @return \Google\Api\RubySettings|null + */ + public function getRubySettings() + { + return $this->ruby_settings; + } + public function hasRubySettings() + { + return isset($this->ruby_settings); + } + public function clearRubySettings() + { + unset($this->ruby_settings); + } + /** + * Settings for Ruby client libraries. + * + * Generated from protobuf field .google.api.RubySettings ruby_settings = 27; + * @param \Google\Api\RubySettings $var + * @return $this + */ + public function setRubySettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\RubySettings::class); + $this->ruby_settings = $var; + return $this; + } + /** + * Settings for Go client libraries. + * + * Generated from protobuf field .google.api.GoSettings go_settings = 28; + * @return \Google\Api\GoSettings|null + */ + public function getGoSettings() + { + return $this->go_settings; + } + public function hasGoSettings() + { + return isset($this->go_settings); + } + public function clearGoSettings() + { + unset($this->go_settings); + } + /** + * Settings for Go client libraries. + * + * Generated from protobuf field .google.api.GoSettings go_settings = 28; + * @param \Google\Api\GoSettings $var + * @return $this + */ + public function setGoSettings($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\GoSettings::class); + $this->go_settings = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/CommonLanguageSettings.php b/vendor/Gcp/google/common-protos/src/Api/CommonLanguageSettings.php new file mode 100644 index 00000000..531434e3 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/CommonLanguageSettings.php @@ -0,0 +1,101 @@ +google.api.CommonLanguageSettings + */ +class CommonLanguageSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Link to automatically generated reference documentation. Example: + * https://cloud.google.com/nodejs/docs/reference/asset/latest + * + * Generated from protobuf field string reference_docs_uri = 1 [deprecated = true]; + * @deprecated + */ + protected $reference_docs_uri = ''; + /** + * The destination where API teams want this client library to be published. + * + * Generated from protobuf field repeated .google.api.ClientLibraryDestination destinations = 2; + */ + private $destinations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $reference_docs_uri + * Link to automatically generated reference documentation. Example: + * https://cloud.google.com/nodejs/docs/reference/asset/latest + * @type array|\Google\Protobuf\Internal\RepeatedField $destinations + * The destination where API teams want this client library to be published. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Link to automatically generated reference documentation. Example: + * https://cloud.google.com/nodejs/docs/reference/asset/latest + * + * Generated from protobuf field string reference_docs_uri = 1 [deprecated = true]; + * @return string + * @deprecated + */ + public function getReferenceDocsUri() + { + @\trigger_error('reference_docs_uri is deprecated.', \E_USER_DEPRECATED); + return $this->reference_docs_uri; + } + /** + * Link to automatically generated reference documentation. Example: + * https://cloud.google.com/nodejs/docs/reference/asset/latest + * + * Generated from protobuf field string reference_docs_uri = 1 [deprecated = true]; + * @param string $var + * @return $this + * @deprecated + */ + public function setReferenceDocsUri($var) + { + @\trigger_error('reference_docs_uri is deprecated.', \E_USER_DEPRECATED); + GPBUtil::checkString($var, True); + $this->reference_docs_uri = $var; + return $this; + } + /** + * The destination where API teams want this client library to be published. + * + * Generated from protobuf field repeated .google.api.ClientLibraryDestination destinations = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getDestinations() + { + return $this->destinations; + } + /** + * The destination where API teams want this client library to be published. + * + * Generated from protobuf field repeated .google.api.ClientLibraryDestination destinations = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::ENUM, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ClientLibraryDestination::class); + $this->destinations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ConfigChange.php b/vendor/Gcp/google/common-protos/src/Api/ConfigChange.php new file mode 100644 index 00000000..9667b150 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ConfigChange.php @@ -0,0 +1,233 @@ +google.api.ConfigChange + */ +class ConfigChange extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Object hierarchy path to the change, with levels separated by a '.' + * character. For repeated fields, an applicable unique identifier field is + * used for the index (usually selector, name, or id). For maps, the term + * 'key' is used. If the field has no unique identifier, the numeric index + * is used. + * Examples: + * - visibility.rules[selector=="google.LibraryService.ListBooks"].restriction + * - quota.metric_rules[selector=="google"].metric_costs[key=="reads"].value + * - logging.producer_destinations[0] + * + * Generated from protobuf field string element = 1; + */ + protected $element = ''; + /** + * Value of the changed object in the old Service configuration, + * in JSON format. This field will not be populated if ChangeType == ADDED. + * + * Generated from protobuf field string old_value = 2; + */ + protected $old_value = ''; + /** + * Value of the changed object in the new Service configuration, + * in JSON format. This field will not be populated if ChangeType == REMOVED. + * + * Generated from protobuf field string new_value = 3; + */ + protected $new_value = ''; + /** + * The type for this change, either ADDED, REMOVED, or MODIFIED. + * + * Generated from protobuf field .google.api.ChangeType change_type = 4; + */ + protected $change_type = 0; + /** + * Collection of advice provided for this change, useful for determining the + * possible impact of this change. + * + * Generated from protobuf field repeated .google.api.Advice advices = 5; + */ + private $advices; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $element + * Object hierarchy path to the change, with levels separated by a '.' + * character. For repeated fields, an applicable unique identifier field is + * used for the index (usually selector, name, or id). For maps, the term + * 'key' is used. If the field has no unique identifier, the numeric index + * is used. + * Examples: + * - visibility.rules[selector=="google.LibraryService.ListBooks"].restriction + * - quota.metric_rules[selector=="google"].metric_costs[key=="reads"].value + * - logging.producer_destinations[0] + * @type string $old_value + * Value of the changed object in the old Service configuration, + * in JSON format. This field will not be populated if ChangeType == ADDED. + * @type string $new_value + * Value of the changed object in the new Service configuration, + * in JSON format. This field will not be populated if ChangeType == REMOVED. + * @type int $change_type + * The type for this change, either ADDED, REMOVED, or MODIFIED. + * @type array<\Google\Api\Advice>|\Google\Protobuf\Internal\RepeatedField $advices + * Collection of advice provided for this change, useful for determining the + * possible impact of this change. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\ConfigChange::initOnce(); + parent::__construct($data); + } + /** + * Object hierarchy path to the change, with levels separated by a '.' + * character. For repeated fields, an applicable unique identifier field is + * used for the index (usually selector, name, or id). For maps, the term + * 'key' is used. If the field has no unique identifier, the numeric index + * is used. + * Examples: + * - visibility.rules[selector=="google.LibraryService.ListBooks"].restriction + * - quota.metric_rules[selector=="google"].metric_costs[key=="reads"].value + * - logging.producer_destinations[0] + * + * Generated from protobuf field string element = 1; + * @return string + */ + public function getElement() + { + return $this->element; + } + /** + * Object hierarchy path to the change, with levels separated by a '.' + * character. For repeated fields, an applicable unique identifier field is + * used for the index (usually selector, name, or id). For maps, the term + * 'key' is used. If the field has no unique identifier, the numeric index + * is used. + * Examples: + * - visibility.rules[selector=="google.LibraryService.ListBooks"].restriction + * - quota.metric_rules[selector=="google"].metric_costs[key=="reads"].value + * - logging.producer_destinations[0] + * + * Generated from protobuf field string element = 1; + * @param string $var + * @return $this + */ + public function setElement($var) + { + GPBUtil::checkString($var, True); + $this->element = $var; + return $this; + } + /** + * Value of the changed object in the old Service configuration, + * in JSON format. This field will not be populated if ChangeType == ADDED. + * + * Generated from protobuf field string old_value = 2; + * @return string + */ + public function getOldValue() + { + return $this->old_value; + } + /** + * Value of the changed object in the old Service configuration, + * in JSON format. This field will not be populated if ChangeType == ADDED. + * + * Generated from protobuf field string old_value = 2; + * @param string $var + * @return $this + */ + public function setOldValue($var) + { + GPBUtil::checkString($var, True); + $this->old_value = $var; + return $this; + } + /** + * Value of the changed object in the new Service configuration, + * in JSON format. This field will not be populated if ChangeType == REMOVED. + * + * Generated from protobuf field string new_value = 3; + * @return string + */ + public function getNewValue() + { + return $this->new_value; + } + /** + * Value of the changed object in the new Service configuration, + * in JSON format. This field will not be populated if ChangeType == REMOVED. + * + * Generated from protobuf field string new_value = 3; + * @param string $var + * @return $this + */ + public function setNewValue($var) + { + GPBUtil::checkString($var, True); + $this->new_value = $var; + return $this; + } + /** + * The type for this change, either ADDED, REMOVED, or MODIFIED. + * + * Generated from protobuf field .google.api.ChangeType change_type = 4; + * @return int + */ + public function getChangeType() + { + return $this->change_type; + } + /** + * The type for this change, either ADDED, REMOVED, or MODIFIED. + * + * Generated from protobuf field .google.api.ChangeType change_type = 4; + * @param int $var + * @return $this + */ + public function setChangeType($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ChangeType::class); + $this->change_type = $var; + return $this; + } + /** + * Collection of advice provided for this change, useful for determining the + * possible impact of this change. + * + * Generated from protobuf field repeated .google.api.Advice advices = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAdvices() + { + return $this->advices; + } + /** + * Collection of advice provided for this change, useful for determining the + * possible impact of this change. + * + * Generated from protobuf field repeated .google.api.Advice advices = 5; + * @param array<\Google\Api\Advice>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAdvices($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Advice::class); + $this->advices = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Context.php b/vendor/Gcp/google/common-protos/src/Api/Context.php new file mode 100644 index 00000000..55234a1c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Context.php @@ -0,0 +1,92 @@ +-bin” and + * “x-goog-ext--jspb” format. For example, list any service + * specific protobuf types that can appear in grpc metadata as follows in your + * yaml file: + * Example: + * context: + * rules: + * - selector: "google.example.library.v1.LibraryService.CreateBook" + * allowed_request_extensions: + * - google.foo.v1.NewExtension + * allowed_response_extensions: + * - google.foo.v1.NewExtension + * You can also specify extension ID instead of fully qualified extension name + * here. + * + * Generated from protobuf message google.api.Context + */ +class Context extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of RPC context rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.ContextRule rules = 1; + */ + private $rules; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\ContextRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of RPC context rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Context::initOnce(); + parent::__construct($data); + } + /** + * A list of RPC context rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.ContextRule rules = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of RPC context rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.ContextRule rules = 1; + * @param array<\Google\Api\ContextRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ContextRule::class); + $this->rules = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ContextRule.php b/vendor/Gcp/google/common-protos/src/Api/ContextRule.php new file mode 100644 index 00000000..41c949ad --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ContextRule.php @@ -0,0 +1,202 @@ +google.api.ContextRule + */ +class ContextRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * A list of full type names of requested contexts. + * + * Generated from protobuf field repeated string requested = 2; + */ + private $requested; + /** + * A list of full type names of provided contexts. + * + * Generated from protobuf field repeated string provided = 3; + */ + private $provided; + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from client to backend. + * + * Generated from protobuf field repeated string allowed_request_extensions = 4; + */ + private $allowed_request_extensions; + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from backend to client. + * + * Generated from protobuf field repeated string allowed_response_extensions = 5; + */ + private $allowed_response_extensions; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type array|\Google\Protobuf\Internal\RepeatedField $requested + * A list of full type names of requested contexts. + * @type array|\Google\Protobuf\Internal\RepeatedField $provided + * A list of full type names of provided contexts. + * @type array|\Google\Protobuf\Internal\RepeatedField $allowed_request_extensions + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from client to backend. + * @type array|\Google\Protobuf\Internal\RepeatedField $allowed_response_extensions + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from backend to client. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Context::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * A list of full type names of requested contexts. + * + * Generated from protobuf field repeated string requested = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRequested() + { + return $this->requested; + } + /** + * A list of full type names of requested contexts. + * + * Generated from protobuf field repeated string requested = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRequested($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->requested = $arr; + return $this; + } + /** + * A list of full type names of provided contexts. + * + * Generated from protobuf field repeated string provided = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getProvided() + { + return $this->provided; + } + /** + * A list of full type names of provided contexts. + * + * Generated from protobuf field repeated string provided = 3; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setProvided($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->provided = $arr; + return $this; + } + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from client to backend. + * + * Generated from protobuf field repeated string allowed_request_extensions = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAllowedRequestExtensions() + { + return $this->allowed_request_extensions; + } + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from client to backend. + * + * Generated from protobuf field repeated string allowed_request_extensions = 4; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAllowedRequestExtensions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->allowed_request_extensions = $arr; + return $this; + } + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from backend to client. + * + * Generated from protobuf field repeated string allowed_response_extensions = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAllowedResponseExtensions() + { + return $this->allowed_response_extensions; + } + /** + * A list of full type names or extension IDs of extensions allowed in grpc + * side channel from backend to client. + * + * Generated from protobuf field repeated string allowed_response_extensions = 5; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAllowedResponseExtensions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->allowed_response_extensions = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Control.php b/vendor/Gcp/google/common-protos/src/Api/Control.php new file mode 100644 index 00000000..287200ef --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Control.php @@ -0,0 +1,103 @@ +google.api.Control + */ +class Control extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The service controller environment to use. If empty, no control plane + * feature (like quota and billing) will be enabled. The recommended value for + * most services is servicecontrol.googleapis.com + * + * Generated from protobuf field string environment = 1; + */ + protected $environment = ''; + /** + * Defines policies applying to the API methods of the service. + * + * Generated from protobuf field repeated .google.api.MethodPolicy method_policies = 4; + */ + private $method_policies; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $environment + * The service controller environment to use. If empty, no control plane + * feature (like quota and billing) will be enabled. The recommended value for + * most services is servicecontrol.googleapis.com + * @type array<\Google\Api\MethodPolicy>|\Google\Protobuf\Internal\RepeatedField $method_policies + * Defines policies applying to the API methods of the service. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Control::initOnce(); + parent::__construct($data); + } + /** + * The service controller environment to use. If empty, no control plane + * feature (like quota and billing) will be enabled. The recommended value for + * most services is servicecontrol.googleapis.com + * + * Generated from protobuf field string environment = 1; + * @return string + */ + public function getEnvironment() + { + return $this->environment; + } + /** + * The service controller environment to use. If empty, no control plane + * feature (like quota and billing) will be enabled. The recommended value for + * most services is servicecontrol.googleapis.com + * + * Generated from protobuf field string environment = 1; + * @param string $var + * @return $this + */ + public function setEnvironment($var) + { + GPBUtil::checkString($var, True); + $this->environment = $var; + return $this; + } + /** + * Defines policies applying to the API methods of the service. + * + * Generated from protobuf field repeated .google.api.MethodPolicy method_policies = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMethodPolicies() + { + return $this->method_policies; + } + /** + * Defines policies applying to the API methods of the service. + * + * Generated from protobuf field repeated .google.api.MethodPolicy method_policies = 4; + * @param array<\Google\Api\MethodPolicy>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMethodPolicies($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MethodPolicy::class); + $this->method_policies = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/CppSettings.php b/vendor/Gcp/google/common-protos/src/Api/CppSettings.php new file mode 100644 index 00000000..7311bb83 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/CppSettings.php @@ -0,0 +1,69 @@ +google.api.CppSettings + */ +class CppSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/CustomHttpPattern.php b/vendor/Gcp/google/common-protos/src/Api/CustomHttpPattern.php new file mode 100644 index 00000000..54a6b3cd --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/CustomHttpPattern.php @@ -0,0 +1,92 @@ +google.api.CustomHttpPattern + */ +class CustomHttpPattern extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The name of this custom HTTP verb. + * + * Generated from protobuf field string kind = 1; + */ + protected $kind = ''; + /** + * The path matched by this custom verb. + * + * Generated from protobuf field string path = 2; + */ + protected $path = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $kind + * The name of this custom HTTP verb. + * @type string $path + * The path matched by this custom verb. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Http::initOnce(); + parent::__construct($data); + } + /** + * The name of this custom HTTP verb. + * + * Generated from protobuf field string kind = 1; + * @return string + */ + public function getKind() + { + return $this->kind; + } + /** + * The name of this custom HTTP verb. + * + * Generated from protobuf field string kind = 1; + * @param string $var + * @return $this + */ + public function setKind($var) + { + GPBUtil::checkString($var, True); + $this->kind = $var; + return $this; + } + /** + * The path matched by this custom verb. + * + * Generated from protobuf field string path = 2; + * @return string + */ + public function getPath() + { + return $this->path; + } + /** + * The path matched by this custom verb. + * + * Generated from protobuf field string path = 2; + * @param string $var + * @return $this + */ + public function setPath($var) + { + GPBUtil::checkString($var, True); + $this->path = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution.php b/vendor/Gcp/google/common-protos/src/Api/Distribution.php new file mode 100644 index 00000000..b2745d1b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution.php @@ -0,0 +1,362 @@ +google.api.Distribution + */ +class Distribution extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The number of values in the population. Must be non-negative. This value + * must equal the sum of the values in `bucket_counts` if a histogram is + * provided. + * + * Generated from protobuf field int64 count = 1; + */ + protected $count = 0; + /** + * The arithmetic mean of the values in the population. If `count` is zero + * then this field must be zero. + * + * Generated from protobuf field double mean = 2; + */ + protected $mean = 0.0; + /** + * The sum of squared deviations from the mean of the values in the + * population. For values x_i this is: + * Sum[i=1..n]((x_i - mean)^2) + * Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition + * describes Welford's method for accumulating this sum in one pass. + * If `count` is zero then this field must be zero. + * + * Generated from protobuf field double sum_of_squared_deviation = 3; + */ + protected $sum_of_squared_deviation = 0.0; + /** + * If specified, contains the range of the population values. The field + * must not be present if the `count` is zero. + * + * Generated from protobuf field .google.api.Distribution.Range range = 4; + */ + protected $range = null; + /** + * Defines the histogram bucket boundaries. If the distribution does not + * contain a histogram, then omit this field. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions bucket_options = 6; + */ + protected $bucket_options = null; + /** + * The number of values in each bucket of the histogram, as described in + * `bucket_options`. If the distribution does not have a histogram, then omit + * this field. If there is a histogram, then the sum of the values in + * `bucket_counts` must equal the value in the `count` field of the + * distribution. + * If present, `bucket_counts` should contain N values, where N is the number + * of buckets specified in `bucket_options`. If you supply fewer than N + * values, the remaining values are assumed to be 0. + * The order of the values in `bucket_counts` follows the bucket numbering + * schemes described for the three bucket types. The first value must be the + * count for the underflow bucket (number 0). The next N-2 values are the + * counts for the finite buckets (number 1 through N-2). The N'th value in + * `bucket_counts` is the count for the overflow bucket (number N-1). + * + * Generated from protobuf field repeated int64 bucket_counts = 7; + */ + private $bucket_counts; + /** + * Must be in increasing order of `value` field. + * + * Generated from protobuf field repeated .google.api.Distribution.Exemplar exemplars = 10; + */ + private $exemplars; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $count + * The number of values in the population. Must be non-negative. This value + * must equal the sum of the values in `bucket_counts` if a histogram is + * provided. + * @type float $mean + * The arithmetic mean of the values in the population. If `count` is zero + * then this field must be zero. + * @type float $sum_of_squared_deviation + * The sum of squared deviations from the mean of the values in the + * population. For values x_i this is: + * Sum[i=1..n]((x_i - mean)^2) + * Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition + * describes Welford's method for accumulating this sum in one pass. + * If `count` is zero then this field must be zero. + * @type \Google\Api\Distribution\Range $range + * If specified, contains the range of the population values. The field + * must not be present if the `count` is zero. + * @type \Google\Api\Distribution\BucketOptions $bucket_options + * Defines the histogram bucket boundaries. If the distribution does not + * contain a histogram, then omit this field. + * @type array|array|\Google\Protobuf\Internal\RepeatedField $bucket_counts + * The number of values in each bucket of the histogram, as described in + * `bucket_options`. If the distribution does not have a histogram, then omit + * this field. If there is a histogram, then the sum of the values in + * `bucket_counts` must equal the value in the `count` field of the + * distribution. + * If present, `bucket_counts` should contain N values, where N is the number + * of buckets specified in `bucket_options`. If you supply fewer than N + * values, the remaining values are assumed to be 0. + * The order of the values in `bucket_counts` follows the bucket numbering + * schemes described for the three bucket types. The first value must be the + * count for the underflow bucket (number 0). The next N-2 values are the + * counts for the finite buckets (number 1 through N-2). The N'th value in + * `bucket_counts` is the count for the overflow bucket (number N-1). + * @type array<\Google\Api\Distribution\Exemplar>|\Google\Protobuf\Internal\RepeatedField $exemplars + * Must be in increasing order of `value` field. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * The number of values in the population. Must be non-negative. This value + * must equal the sum of the values in `bucket_counts` if a histogram is + * provided. + * + * Generated from protobuf field int64 count = 1; + * @return int|string + */ + public function getCount() + { + return $this->count; + } + /** + * The number of values in the population. Must be non-negative. This value + * must equal the sum of the values in `bucket_counts` if a histogram is + * provided. + * + * Generated from protobuf field int64 count = 1; + * @param int|string $var + * @return $this + */ + public function setCount($var) + { + GPBUtil::checkInt64($var); + $this->count = $var; + return $this; + } + /** + * The arithmetic mean of the values in the population. If `count` is zero + * then this field must be zero. + * + * Generated from protobuf field double mean = 2; + * @return float + */ + public function getMean() + { + return $this->mean; + } + /** + * The arithmetic mean of the values in the population. If `count` is zero + * then this field must be zero. + * + * Generated from protobuf field double mean = 2; + * @param float $var + * @return $this + */ + public function setMean($var) + { + GPBUtil::checkDouble($var); + $this->mean = $var; + return $this; + } + /** + * The sum of squared deviations from the mean of the values in the + * population. For values x_i this is: + * Sum[i=1..n]((x_i - mean)^2) + * Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition + * describes Welford's method for accumulating this sum in one pass. + * If `count` is zero then this field must be zero. + * + * Generated from protobuf field double sum_of_squared_deviation = 3; + * @return float + */ + public function getSumOfSquaredDeviation() + { + return $this->sum_of_squared_deviation; + } + /** + * The sum of squared deviations from the mean of the values in the + * population. For values x_i this is: + * Sum[i=1..n]((x_i - mean)^2) + * Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition + * describes Welford's method for accumulating this sum in one pass. + * If `count` is zero then this field must be zero. + * + * Generated from protobuf field double sum_of_squared_deviation = 3; + * @param float $var + * @return $this + */ + public function setSumOfSquaredDeviation($var) + { + GPBUtil::checkDouble($var); + $this->sum_of_squared_deviation = $var; + return $this; + } + /** + * If specified, contains the range of the population values. The field + * must not be present if the `count` is zero. + * + * Generated from protobuf field .google.api.Distribution.Range range = 4; + * @return \Google\Api\Distribution\Range|null + */ + public function getRange() + { + return $this->range; + } + public function hasRange() + { + return isset($this->range); + } + public function clearRange() + { + unset($this->range); + } + /** + * If specified, contains the range of the population values. The field + * must not be present if the `count` is zero. + * + * Generated from protobuf field .google.api.Distribution.Range range = 4; + * @param \Google\Api\Distribution\Range $var + * @return $this + */ + public function setRange($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\Range::class); + $this->range = $var; + return $this; + } + /** + * Defines the histogram bucket boundaries. If the distribution does not + * contain a histogram, then omit this field. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions bucket_options = 6; + * @return \Google\Api\Distribution\BucketOptions|null + */ + public function getBucketOptions() + { + return $this->bucket_options; + } + public function hasBucketOptions() + { + return isset($this->bucket_options); + } + public function clearBucketOptions() + { + unset($this->bucket_options); + } + /** + * Defines the histogram bucket boundaries. If the distribution does not + * contain a histogram, then omit this field. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions bucket_options = 6; + * @param \Google\Api\Distribution\BucketOptions $var + * @return $this + */ + public function setBucketOptions($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\BucketOptions::class); + $this->bucket_options = $var; + return $this; + } + /** + * The number of values in each bucket of the histogram, as described in + * `bucket_options`. If the distribution does not have a histogram, then omit + * this field. If there is a histogram, then the sum of the values in + * `bucket_counts` must equal the value in the `count` field of the + * distribution. + * If present, `bucket_counts` should contain N values, where N is the number + * of buckets specified in `bucket_options`. If you supply fewer than N + * values, the remaining values are assumed to be 0. + * The order of the values in `bucket_counts` follows the bucket numbering + * schemes described for the three bucket types. The first value must be the + * count for the underflow bucket (number 0). The next N-2 values are the + * counts for the finite buckets (number 1 through N-2). The N'th value in + * `bucket_counts` is the count for the overflow bucket (number N-1). + * + * Generated from protobuf field repeated int64 bucket_counts = 7; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getBucketCounts() + { + return $this->bucket_counts; + } + /** + * The number of values in each bucket of the histogram, as described in + * `bucket_options`. If the distribution does not have a histogram, then omit + * this field. If there is a histogram, then the sum of the values in + * `bucket_counts` must equal the value in the `count` field of the + * distribution. + * If present, `bucket_counts` should contain N values, where N is the number + * of buckets specified in `bucket_options`. If you supply fewer than N + * values, the remaining values are assumed to be 0. + * The order of the values in `bucket_counts` follows the bucket numbering + * schemes described for the three bucket types. The first value must be the + * count for the underflow bucket (number 0). The next N-2 values are the + * counts for the finite buckets (number 1 through N-2). The N'th value in + * `bucket_counts` is the count for the overflow bucket (number N-1). + * + * Generated from protobuf field repeated int64 bucket_counts = 7; + * @param array|array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setBucketCounts($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::INT64); + $this->bucket_counts = $arr; + return $this; + } + /** + * Must be in increasing order of `value` field. + * + * Generated from protobuf field repeated .google.api.Distribution.Exemplar exemplars = 10; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getExemplars() + { + return $this->exemplars; + } + /** + * Must be in increasing order of `value` field. + * + * Generated from protobuf field repeated .google.api.Distribution.Exemplar exemplars = 10; + * @param array<\Google\Api\Distribution\Exemplar>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setExemplars($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\Exemplar::class); + $this->exemplars = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions.php new file mode 100644 index 00000000..5c2cad12 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions.php @@ -0,0 +1,138 @@ + 0) is the + * same as the upper bound of bucket i - 1. The buckets span the whole range + * of finite values: lower bound of the underflow bucket is -infinity and the + * upper bound of the overflow bucket is +infinity. The finite buckets are + * so-called because both bounds are finite. + * + * Generated from protobuf message google.api.Distribution.BucketOptions + */ +class BucketOptions extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + protected $options; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\Distribution\BucketOptions\Linear $linear_buckets + * The linear bucket. + * @type \Google\Api\Distribution\BucketOptions\Exponential $exponential_buckets + * The exponential buckets. + * @type \Google\Api\Distribution\BucketOptions\Explicit $explicit_buckets + * The explicit buckets. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * The linear bucket. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Linear linear_buckets = 1; + * @return \Google\Api\Distribution\BucketOptions\Linear|null + */ + public function getLinearBuckets() + { + return $this->readOneof(1); + } + public function hasLinearBuckets() + { + return $this->hasOneof(1); + } + /** + * The linear bucket. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Linear linear_buckets = 1; + * @param \Google\Api\Distribution\BucketOptions\Linear $var + * @return $this + */ + public function setLinearBuckets($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\BucketOptions\Linear::class); + $this->writeOneof(1, $var); + return $this; + } + /** + * The exponential buckets. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Exponential exponential_buckets = 2; + * @return \Google\Api\Distribution\BucketOptions\Exponential|null + */ + public function getExponentialBuckets() + { + return $this->readOneof(2); + } + public function hasExponentialBuckets() + { + return $this->hasOneof(2); + } + /** + * The exponential buckets. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Exponential exponential_buckets = 2; + * @param \Google\Api\Distribution\BucketOptions\Exponential $var + * @return $this + */ + public function setExponentialBuckets($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\BucketOptions\Exponential::class); + $this->writeOneof(2, $var); + return $this; + } + /** + * The explicit buckets. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Explicit explicit_buckets = 3; + * @return \Google\Api\Distribution\BucketOptions\Explicit|null + */ + public function getExplicitBuckets() + { + return $this->readOneof(3); + } + public function hasExplicitBuckets() + { + return $this->hasOneof(3); + } + /** + * The explicit buckets. + * + * Generated from protobuf field .google.api.Distribution.BucketOptions.Explicit explicit_buckets = 3; + * @param \Google\Api\Distribution\BucketOptions\Explicit $var + * @return $this + */ + public function setExplicitBuckets($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Distribution\BucketOptions\Explicit::class); + $this->writeOneof(3, $var); + return $this; + } + /** + * @return string + */ + public function getOptions() + { + return $this->whichOneof("options"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php new file mode 100644 index 00000000..7c04d003 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Explicit.php @@ -0,0 +1,68 @@ +google.api.Distribution.BucketOptions.Explicit + */ +class Explicit extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The values must be monotonically increasing. + * + * Generated from protobuf field repeated double bounds = 1; + */ + private $bounds; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array|\Google\Protobuf\Internal\RepeatedField $bounds + * The values must be monotonically increasing. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * The values must be monotonically increasing. + * + * Generated from protobuf field repeated double bounds = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getBounds() + { + return $this->bounds; + } + /** + * The values must be monotonically increasing. + * + * Generated from protobuf field repeated double bounds = 1; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setBounds($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::DOUBLE); + $this->bounds = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php new file mode 100644 index 00000000..be899917 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Exponential.php @@ -0,0 +1,129 @@ +google.api.Distribution.BucketOptions.Exponential + */ +class Exponential extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + */ + protected $num_finite_buckets = 0; + /** + * Must be greater than 1. + * + * Generated from protobuf field double growth_factor = 2; + */ + protected $growth_factor = 0.0; + /** + * Must be greater than 0. + * + * Generated from protobuf field double scale = 3; + */ + protected $scale = 0.0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $num_finite_buckets + * Must be greater than 0. + * @type float $growth_factor + * Must be greater than 1. + * @type float $scale + * Must be greater than 0. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + * @return int + */ + public function getNumFiniteBuckets() + { + return $this->num_finite_buckets; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + * @param int $var + * @return $this + */ + public function setNumFiniteBuckets($var) + { + GPBUtil::checkInt32($var); + $this->num_finite_buckets = $var; + return $this; + } + /** + * Must be greater than 1. + * + * Generated from protobuf field double growth_factor = 2; + * @return float + */ + public function getGrowthFactor() + { + return $this->growth_factor; + } + /** + * Must be greater than 1. + * + * Generated from protobuf field double growth_factor = 2; + * @param float $var + * @return $this + */ + public function setGrowthFactor($var) + { + GPBUtil::checkDouble($var); + $this->growth_factor = $var; + return $this; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field double scale = 3; + * @return float + */ + public function getScale() + { + return $this->scale; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field double scale = 3; + * @param float $var + * @return $this + */ + public function setScale($var) + { + GPBUtil::checkDouble($var); + $this->scale = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php new file mode 100644 index 00000000..15a57099 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/BucketOptions/Linear.php @@ -0,0 +1,129 @@ +google.api.Distribution.BucketOptions.Linear + */ +class Linear extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + */ + protected $num_finite_buckets = 0; + /** + * Must be greater than 0. + * + * Generated from protobuf field double width = 2; + */ + protected $width = 0.0; + /** + * Lower bound of the first bucket. + * + * Generated from protobuf field double offset = 3; + */ + protected $offset = 0.0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $num_finite_buckets + * Must be greater than 0. + * @type float $width + * Must be greater than 0. + * @type float $offset + * Lower bound of the first bucket. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + * @return int + */ + public function getNumFiniteBuckets() + { + return $this->num_finite_buckets; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field int32 num_finite_buckets = 1; + * @param int $var + * @return $this + */ + public function setNumFiniteBuckets($var) + { + GPBUtil::checkInt32($var); + $this->num_finite_buckets = $var; + return $this; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field double width = 2; + * @return float + */ + public function getWidth() + { + return $this->width; + } + /** + * Must be greater than 0. + * + * Generated from protobuf field double width = 2; + * @param float $var + * @return $this + */ + public function setWidth($var) + { + GPBUtil::checkDouble($var); + $this->width = $var; + return $this; + } + /** + * Lower bound of the first bucket. + * + * Generated from protobuf field double offset = 3; + * @return float + */ + public function getOffset() + { + return $this->offset; + } + /** + * Lower bound of the first bucket. + * + * Generated from protobuf field double offset = 3; + * @param float $var + * @return $this + */ + public function setOffset($var) + { + GPBUtil::checkDouble($var); + $this->offset = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/Exemplar.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/Exemplar.php new file mode 100644 index 00000000..b552ef8a --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/Exemplar.php @@ -0,0 +1,163 @@ +google.api.Distribution.Exemplar + */ +class Exemplar extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Value of the exemplar point. This value determines to which bucket the + * exemplar belongs. + * + * Generated from protobuf field double value = 1; + */ + protected $value = 0.0; + /** + * The observation (sampling) time of the above value. + * + * Generated from protobuf field .google.protobuf.Timestamp timestamp = 2; + */ + protected $timestamp = null; + /** + * Contextual information about the example value. Examples are: + * Trace: type.googleapis.com/google.monitoring.v3.SpanContext + * Literal string: type.googleapis.com/google.protobuf.StringValue + * Labels dropped during aggregation: + * type.googleapis.com/google.monitoring.v3.DroppedLabels + * There may be only a single attachment of any given message type in a + * single exemplar, and this is enforced by the system. + * + * Generated from protobuf field repeated .google.protobuf.Any attachments = 3; + */ + private $attachments; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $value + * Value of the exemplar point. This value determines to which bucket the + * exemplar belongs. + * @type \Google\Protobuf\Timestamp $timestamp + * The observation (sampling) time of the above value. + * @type array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $attachments + * Contextual information about the example value. Examples are: + * Trace: type.googleapis.com/google.monitoring.v3.SpanContext + * Literal string: type.googleapis.com/google.protobuf.StringValue + * Labels dropped during aggregation: + * type.googleapis.com/google.monitoring.v3.DroppedLabels + * There may be only a single attachment of any given message type in a + * single exemplar, and this is enforced by the system. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * Value of the exemplar point. This value determines to which bucket the + * exemplar belongs. + * + * Generated from protobuf field double value = 1; + * @return float + */ + public function getValue() + { + return $this->value; + } + /** + * Value of the exemplar point. This value determines to which bucket the + * exemplar belongs. + * + * Generated from protobuf field double value = 1; + * @param float $var + * @return $this + */ + public function setValue($var) + { + GPBUtil::checkDouble($var); + $this->value = $var; + return $this; + } + /** + * The observation (sampling) time of the above value. + * + * Generated from protobuf field .google.protobuf.Timestamp timestamp = 2; + * @return \Google\Protobuf\Timestamp|null + */ + public function getTimestamp() + { + return $this->timestamp; + } + public function hasTimestamp() + { + return isset($this->timestamp); + } + public function clearTimestamp() + { + unset($this->timestamp); + } + /** + * The observation (sampling) time of the above value. + * + * Generated from protobuf field .google.protobuf.Timestamp timestamp = 2; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setTimestamp($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->timestamp = $var; + return $this; + } + /** + * Contextual information about the example value. Examples are: + * Trace: type.googleapis.com/google.monitoring.v3.SpanContext + * Literal string: type.googleapis.com/google.protobuf.StringValue + * Labels dropped during aggregation: + * type.googleapis.com/google.monitoring.v3.DroppedLabels + * There may be only a single attachment of any given message type in a + * single exemplar, and this is enforced by the system. + * + * Generated from protobuf field repeated .google.protobuf.Any attachments = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAttachments() + { + return $this->attachments; + } + /** + * Contextual information about the example value. Examples are: + * Trace: type.googleapis.com/google.monitoring.v3.SpanContext + * Literal string: type.googleapis.com/google.protobuf.StringValue + * Labels dropped during aggregation: + * type.googleapis.com/google.monitoring.v3.DroppedLabels + * There may be only a single attachment of any given message type in a + * single exemplar, and this is enforced by the system. + * + * Generated from protobuf field repeated .google.protobuf.Any attachments = 3; + * @param array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAttachments($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->attachments = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Distribution/Range.php b/vendor/Gcp/google/common-protos/src/Api/Distribution/Range.php new file mode 100644 index 00000000..73130f8d --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Distribution/Range.php @@ -0,0 +1,92 @@ +google.api.Distribution.Range + */ +class Range extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The minimum of the population values. + * + * Generated from protobuf field double min = 1; + */ + protected $min = 0.0; + /** + * The maximum of the population values. + * + * Generated from protobuf field double max = 2; + */ + protected $max = 0.0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $min + * The minimum of the population values. + * @type float $max + * The maximum of the population values. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Distribution::initOnce(); + parent::__construct($data); + } + /** + * The minimum of the population values. + * + * Generated from protobuf field double min = 1; + * @return float + */ + public function getMin() + { + return $this->min; + } + /** + * The minimum of the population values. + * + * Generated from protobuf field double min = 1; + * @param float $var + * @return $this + */ + public function setMin($var) + { + GPBUtil::checkDouble($var); + $this->min = $var; + return $this; + } + /** + * The maximum of the population values. + * + * Generated from protobuf field double max = 2; + * @return float + */ + public function getMax() + { + return $this->max; + } + /** + * The maximum of the population values. + * + * Generated from protobuf field double max = 2; + * @param float $var + * @return $this + */ + public function setMax($var) + { + GPBUtil::checkDouble($var); + $this->max = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Documentation.php b/vendor/Gcp/google/common-protos/src/Api/Documentation.php new file mode 100644 index 00000000..ba7b31c3 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Documentation.php @@ -0,0 +1,341 @@ +documentation: + * summary: > + * The Google Calendar API gives access + * to most calendar features. + * pages: + * - name: Overview + * content: (== include google/foo/overview.md ==) + * - name: Tutorial + * content: (== include google/foo/tutorial.md ==) + * subpages; + * - name: Java + * content: (== include google/foo/tutorial_java.md ==) + * rules: + * - selector: google.calendar.Calendar.Get + * description: > + * ... + * - selector: google.calendar.Calendar.Put + * description: > + * ... + * + * Documentation is provided in markdown syntax. In addition to + * standard markdown features, definition lists, tables and fenced + * code blocks are supported. Section headers can be provided and are + * interpreted relative to the section nesting of the context where + * a documentation fragment is embedded. + * Documentation from the IDL is merged with documentation defined + * via the config at normalization time, where documentation provided + * by config rules overrides IDL provided. + * A number of constructs specific to the API platform are supported + * in documentation text. + * In order to reference a proto element, the following + * notation can be used: + *

[fully.qualified.proto.name][]
+ * To override the display text used for the link, this can be used: + *
[display text][fully.qualified.proto.name]
+ * Text can be excluded from doc using the following notation: + *
(-- internal comment --)
+ * A few directives are available in documentation. Note that + * directives must appear on a single line to be properly + * identified. The `include` directive includes a markdown file from + * an external source: + *
(== include path/to/file ==)
+ * The `resource_for` directive marks a message to be the resource of + * a collection in REST view. If it is not specified, tools attempt + * to infer the resource from the operations in a collection: + *
(== resource_for v1.shelves.books ==)
+ * The directive `suppress_warning` does not directly affect documentation + * and is documented together with service config validation. + * + * Generated from protobuf message google.api.Documentation + */ +class Documentation extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A short description of what the service does. The summary must be plain + * text. It becomes the overview of the service displayed in Google Cloud + * Console. + * NOTE: This field is equivalent to the standard field `description`. + * + * Generated from protobuf field string summary = 1; + */ + protected $summary = ''; + /** + * The top level pages for the documentation set. + * + * Generated from protobuf field repeated .google.api.Page pages = 5; + */ + private $pages; + /** + * A list of documentation rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.DocumentationRule rules = 3; + */ + private $rules; + /** + * The URL to the root of documentation. + * + * Generated from protobuf field string documentation_root_url = 4; + */ + protected $documentation_root_url = ''; + /** + * Specifies the service root url if the default one (the service name + * from the yaml file) is not suitable. This can be seen in any fully + * specified service urls as well as sections that show a base that other + * urls are relative to. + * + * Generated from protobuf field string service_root_url = 6; + */ + protected $service_root_url = ''; + /** + * Declares a single overview page. For example: + *
documentation:
+     *   summary: ...
+     *   overview: (== include overview.md ==)
+     * 
+ * This is a shortcut for the following declaration (using pages style): + *
documentation:
+     *   summary: ...
+     *   pages:
+     *   - name: Overview
+     *     content: (== include overview.md ==)
+     * 
+ * Note: you cannot specify both `overview` field and `pages` field. + * + * Generated from protobuf field string overview = 2; + */ + protected $overview = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $summary + * A short description of what the service does. The summary must be plain + * text. It becomes the overview of the service displayed in Google Cloud + * Console. + * NOTE: This field is equivalent to the standard field `description`. + * @type array<\Google\Api\Page>|\Google\Protobuf\Internal\RepeatedField $pages + * The top level pages for the documentation set. + * @type array<\Google\Api\DocumentationRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of documentation rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * @type string $documentation_root_url + * The URL to the root of documentation. + * @type string $service_root_url + * Specifies the service root url if the default one (the service name + * from the yaml file) is not suitable. This can be seen in any fully + * specified service urls as well as sections that show a base that other + * urls are relative to. + * @type string $overview + * Declares a single overview page. For example: + *
documentation:
+     *             summary: ...
+     *             overview: (== include overview.md ==)
+     *           
+ * This is a shortcut for the following declaration (using pages style): + *
documentation:
+     *             summary: ...
+     *             pages:
+     *             - name: Overview
+     *               content: (== include overview.md ==)
+     *           
+ * Note: you cannot specify both `overview` field and `pages` field. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Documentation::initOnce(); + parent::__construct($data); + } + /** + * A short description of what the service does. The summary must be plain + * text. It becomes the overview of the service displayed in Google Cloud + * Console. + * NOTE: This field is equivalent to the standard field `description`. + * + * Generated from protobuf field string summary = 1; + * @return string + */ + public function getSummary() + { + return $this->summary; + } + /** + * A short description of what the service does. The summary must be plain + * text. It becomes the overview of the service displayed in Google Cloud + * Console. + * NOTE: This field is equivalent to the standard field `description`. + * + * Generated from protobuf field string summary = 1; + * @param string $var + * @return $this + */ + public function setSummary($var) + { + GPBUtil::checkString($var, True); + $this->summary = $var; + return $this; + } + /** + * The top level pages for the documentation set. + * + * Generated from protobuf field repeated .google.api.Page pages = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getPages() + { + return $this->pages; + } + /** + * The top level pages for the documentation set. + * + * Generated from protobuf field repeated .google.api.Page pages = 5; + * @param array<\Google\Api\Page>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setPages($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Page::class); + $this->pages = $arr; + return $this; + } + /** + * A list of documentation rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.DocumentationRule rules = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of documentation rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.DocumentationRule rules = 3; + * @param array<\Google\Api\DocumentationRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\DocumentationRule::class); + $this->rules = $arr; + return $this; + } + /** + * The URL to the root of documentation. + * + * Generated from protobuf field string documentation_root_url = 4; + * @return string + */ + public function getDocumentationRootUrl() + { + return $this->documentation_root_url; + } + /** + * The URL to the root of documentation. + * + * Generated from protobuf field string documentation_root_url = 4; + * @param string $var + * @return $this + */ + public function setDocumentationRootUrl($var) + { + GPBUtil::checkString($var, True); + $this->documentation_root_url = $var; + return $this; + } + /** + * Specifies the service root url if the default one (the service name + * from the yaml file) is not suitable. This can be seen in any fully + * specified service urls as well as sections that show a base that other + * urls are relative to. + * + * Generated from protobuf field string service_root_url = 6; + * @return string + */ + public function getServiceRootUrl() + { + return $this->service_root_url; + } + /** + * Specifies the service root url if the default one (the service name + * from the yaml file) is not suitable. This can be seen in any fully + * specified service urls as well as sections that show a base that other + * urls are relative to. + * + * Generated from protobuf field string service_root_url = 6; + * @param string $var + * @return $this + */ + public function setServiceRootUrl($var) + { + GPBUtil::checkString($var, True); + $this->service_root_url = $var; + return $this; + } + /** + * Declares a single overview page. For example: + *
documentation:
+     *   summary: ...
+     *   overview: (== include overview.md ==)
+     * 
+ * This is a shortcut for the following declaration (using pages style): + *
documentation:
+     *   summary: ...
+     *   pages:
+     *   - name: Overview
+     *     content: (== include overview.md ==)
+     * 
+ * Note: you cannot specify both `overview` field and `pages` field. + * + * Generated from protobuf field string overview = 2; + * @return string + */ + public function getOverview() + { + return $this->overview; + } + /** + * Declares a single overview page. For example: + *
documentation:
+     *   summary: ...
+     *   overview: (== include overview.md ==)
+     * 
+ * This is a shortcut for the following declaration (using pages style): + *
documentation:
+     *   summary: ...
+     *   pages:
+     *   - name: Overview
+     *     content: (== include overview.md ==)
+     * 
+ * Note: you cannot specify both `overview` field and `pages` field. + * + * Generated from protobuf field string overview = 2; + * @param string $var + * @return $this + */ + public function setOverview($var) + { + GPBUtil::checkString($var, True); + $this->overview = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/DocumentationRule.php b/vendor/Gcp/google/common-protos/src/Api/DocumentationRule.php new file mode 100644 index 00000000..23c22314 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/DocumentationRule.php @@ -0,0 +1,159 @@ +google.api.DocumentationRule + */ +class DocumentationRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The selector is a comma-separated list of patterns for any element such as + * a method, a field, an enum value. Each pattern is a qualified name of the + * element which may end in "*", indicating a wildcard. Wildcards are only + * allowed at the end and for a whole component of the qualified name, + * i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match + * one or more components. To specify a default for all applicable elements, + * the whole pattern "*" is used. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * Description of the selected proto element (e.g. a message, a method, a + * 'service' definition, or a field). Defaults to leading & trailing comments + * taken from the proto source definition of the proto element. + * + * Generated from protobuf field string description = 2; + */ + protected $description = ''; + /** + * Deprecation description of the selected element(s). It can be provided if + * an element is marked as `deprecated`. + * + * Generated from protobuf field string deprecation_description = 3; + */ + protected $deprecation_description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * The selector is a comma-separated list of patterns for any element such as + * a method, a field, an enum value. Each pattern is a qualified name of the + * element which may end in "*", indicating a wildcard. Wildcards are only + * allowed at the end and for a whole component of the qualified name, + * i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match + * one or more components. To specify a default for all applicable elements, + * the whole pattern "*" is used. + * @type string $description + * Description of the selected proto element (e.g. a message, a method, a + * 'service' definition, or a field). Defaults to leading & trailing comments + * taken from the proto source definition of the proto element. + * @type string $deprecation_description + * Deprecation description of the selected element(s). It can be provided if + * an element is marked as `deprecated`. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Documentation::initOnce(); + parent::__construct($data); + } + /** + * The selector is a comma-separated list of patterns for any element such as + * a method, a field, an enum value. Each pattern is a qualified name of the + * element which may end in "*", indicating a wildcard. Wildcards are only + * allowed at the end and for a whole component of the qualified name, + * i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match + * one or more components. To specify a default for all applicable elements, + * the whole pattern "*" is used. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * The selector is a comma-separated list of patterns for any element such as + * a method, a field, an enum value. Each pattern is a qualified name of the + * element which may end in "*", indicating a wildcard. Wildcards are only + * allowed at the end and for a whole component of the qualified name, + * i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A wildcard will match + * one or more components. To specify a default for all applicable elements, + * the whole pattern "*" is used. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Description of the selected proto element (e.g. a message, a method, a + * 'service' definition, or a field). Defaults to leading & trailing comments + * taken from the proto source definition of the proto element. + * + * Generated from protobuf field string description = 2; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Description of the selected proto element (e.g. a message, a method, a + * 'service' definition, or a field). Defaults to leading & trailing comments + * taken from the proto source definition of the proto element. + * + * Generated from protobuf field string description = 2; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * Deprecation description of the selected element(s). It can be provided if + * an element is marked as `deprecated`. + * + * Generated from protobuf field string deprecation_description = 3; + * @return string + */ + public function getDeprecationDescription() + { + return $this->deprecation_description; + } + /** + * Deprecation description of the selected element(s). It can be provided if + * an element is marked as `deprecated`. + * + * Generated from protobuf field string deprecation_description = 3; + * @param string $var + * @return $this + */ + public function setDeprecationDescription($var) + { + GPBUtil::checkString($var, True); + $this->deprecation_description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/DotnetSettings.php b/vendor/Gcp/google/common-protos/src/Api/DotnetSettings.php new file mode 100644 index 00000000..ee1918ec --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/DotnetSettings.php @@ -0,0 +1,284 @@ +google.api.DotnetSettings + */ +class DotnetSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Map from original service names to renamed versions. + * This is used when the default generated types + * would cause a naming conflict. (Neither name is + * fully-qualified.) + * Example: Subscriber to SubscriberServiceApi. + * + * Generated from protobuf field map renamed_services = 2; + */ + private $renamed_services; + /** + * Map from full resource types to the effective short name + * for the resource. This is used when otherwise resource + * named from different services would cause naming collisions. + * Example entry: + * "datalabeling.googleapis.com/Dataset": "DataLabelingDataset" + * + * Generated from protobuf field map renamed_resources = 3; + */ + private $renamed_resources; + /** + * List of full resource types to ignore during generation. + * This is typically used for API-specific Location resources, + * which should be handled by the generator as if they were actually + * the common Location resources. + * Example entry: "documentai.googleapis.com/Location" + * + * Generated from protobuf field repeated string ignored_resources = 4; + */ + private $ignored_resources; + /** + * Namespaces which must be aliased in snippets due to + * a known (but non-generator-predictable) naming collision + * + * Generated from protobuf field repeated string forced_namespace_aliases = 5; + */ + private $forced_namespace_aliases; + /** + * Method signatures (in the form "service.method(signature)") + * which are provided separately, so shouldn't be generated. + * Snippets *calling* these methods are still generated, however. + * + * Generated from protobuf field repeated string handwritten_signatures = 6; + */ + private $handwritten_signatures; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * @type array|\Google\Protobuf\Internal\MapField $renamed_services + * Map from original service names to renamed versions. + * This is used when the default generated types + * would cause a naming conflict. (Neither name is + * fully-qualified.) + * Example: Subscriber to SubscriberServiceApi. + * @type array|\Google\Protobuf\Internal\MapField $renamed_resources + * Map from full resource types to the effective short name + * for the resource. This is used when otherwise resource + * named from different services would cause naming collisions. + * Example entry: + * "datalabeling.googleapis.com/Dataset": "DataLabelingDataset" + * @type array|\Google\Protobuf\Internal\RepeatedField $ignored_resources + * List of full resource types to ignore during generation. + * This is typically used for API-specific Location resources, + * which should be handled by the generator as if they were actually + * the common Location resources. + * Example entry: "documentai.googleapis.com/Location" + * @type array|\Google\Protobuf\Internal\RepeatedField $forced_namespace_aliases + * Namespaces which must be aliased in snippets due to + * a known (but non-generator-predictable) naming collision + * @type array|\Google\Protobuf\Internal\RepeatedField $handwritten_signatures + * Method signatures (in the form "service.method(signature)") + * which are provided separately, so shouldn't be generated. + * Snippets *calling* these methods are still generated, however. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } + /** + * Map from original service names to renamed versions. + * This is used when the default generated types + * would cause a naming conflict. (Neither name is + * fully-qualified.) + * Example: Subscriber to SubscriberServiceApi. + * + * Generated from protobuf field map renamed_services = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getRenamedServices() + { + return $this->renamed_services; + } + /** + * Map from original service names to renamed versions. + * This is used when the default generated types + * would cause a naming conflict. (Neither name is + * fully-qualified.) + * Example: Subscriber to SubscriberServiceApi. + * + * Generated from protobuf field map renamed_services = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setRenamedServices($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->renamed_services = $arr; + return $this; + } + /** + * Map from full resource types to the effective short name + * for the resource. This is used when otherwise resource + * named from different services would cause naming collisions. + * Example entry: + * "datalabeling.googleapis.com/Dataset": "DataLabelingDataset" + * + * Generated from protobuf field map renamed_resources = 3; + * @return \Google\Protobuf\Internal\MapField + */ + public function getRenamedResources() + { + return $this->renamed_resources; + } + /** + * Map from full resource types to the effective short name + * for the resource. This is used when otherwise resource + * named from different services would cause naming collisions. + * Example entry: + * "datalabeling.googleapis.com/Dataset": "DataLabelingDataset" + * + * Generated from protobuf field map renamed_resources = 3; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setRenamedResources($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->renamed_resources = $arr; + return $this; + } + /** + * List of full resource types to ignore during generation. + * This is typically used for API-specific Location resources, + * which should be handled by the generator as if they were actually + * the common Location resources. + * Example entry: "documentai.googleapis.com/Location" + * + * Generated from protobuf field repeated string ignored_resources = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getIgnoredResources() + { + return $this->ignored_resources; + } + /** + * List of full resource types to ignore during generation. + * This is typically used for API-specific Location resources, + * which should be handled by the generator as if they were actually + * the common Location resources. + * Example entry: "documentai.googleapis.com/Location" + * + * Generated from protobuf field repeated string ignored_resources = 4; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setIgnoredResources($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->ignored_resources = $arr; + return $this; + } + /** + * Namespaces which must be aliased in snippets due to + * a known (but non-generator-predictable) naming collision + * + * Generated from protobuf field repeated string forced_namespace_aliases = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getForcedNamespaceAliases() + { + return $this->forced_namespace_aliases; + } + /** + * Namespaces which must be aliased in snippets due to + * a known (but non-generator-predictable) naming collision + * + * Generated from protobuf field repeated string forced_namespace_aliases = 5; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setForcedNamespaceAliases($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->forced_namespace_aliases = $arr; + return $this; + } + /** + * Method signatures (in the form "service.method(signature)") + * which are provided separately, so shouldn't be generated. + * Snippets *calling* these methods are still generated, however. + * + * Generated from protobuf field repeated string handwritten_signatures = 6; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getHandwrittenSignatures() + { + return $this->handwritten_signatures; + } + /** + * Method signatures (in the form "service.method(signature)") + * which are provided separately, so shouldn't be generated. + * Snippets *calling* these methods are still generated, however. + * + * Generated from protobuf field repeated string handwritten_signatures = 6; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setHandwrittenSignatures($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->handwritten_signatures = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Endpoint.php b/vendor/Gcp/google/common-protos/src/Api/Endpoint.php new file mode 100644 index 00000000..12537134 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Endpoint.php @@ -0,0 +1,229 @@ +google.api.Endpoint + */ +class Endpoint extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The canonical name of this endpoint. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * Unimplemented. Dot not use. + * DEPRECATED: This field is no longer supported. Instead of using aliases, + * please specify multiple [google.api.Endpoint][google.api.Endpoint] for each + * of the intended aliases. + * Additional names that this endpoint will be hosted on. + * + * Generated from protobuf field repeated string aliases = 2 [deprecated = true]; + * @deprecated + */ + private $aliases; + /** + * The specification of an Internet routable address of API frontend that will + * handle requests to this [API + * Endpoint](https://cloud.google.com/apis/design/glossary). It should be + * either a valid IPv4 address or a fully-qualified domain name. For example, + * "8.8.8.8" or "myservice.appspot.com". + * + * Generated from protobuf field string target = 101; + */ + protected $target = ''; + /** + * Allowing + * [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka + * cross-domain traffic, would allow the backends served from this endpoint to + * receive and respond to HTTP OPTIONS requests. The response will be used by + * the browser to determine whether the subsequent cross-origin request is + * allowed to proceed. + * + * Generated from protobuf field bool allow_cors = 5; + */ + protected $allow_cors = \false; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The canonical name of this endpoint. + * @type array|\Google\Protobuf\Internal\RepeatedField $aliases + * Unimplemented. Dot not use. + * DEPRECATED: This field is no longer supported. Instead of using aliases, + * please specify multiple [google.api.Endpoint][google.api.Endpoint] for each + * of the intended aliases. + * Additional names that this endpoint will be hosted on. + * @type string $target + * The specification of an Internet routable address of API frontend that will + * handle requests to this [API + * Endpoint](https://cloud.google.com/apis/design/glossary). It should be + * either a valid IPv4 address or a fully-qualified domain name. For example, + * "8.8.8.8" or "myservice.appspot.com". + * @type bool $allow_cors + * Allowing + * [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka + * cross-domain traffic, would allow the backends served from this endpoint to + * receive and respond to HTTP OPTIONS requests. The response will be used by + * the browser to determine whether the subsequent cross-origin request is + * allowed to proceed. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Endpoint::initOnce(); + parent::__construct($data); + } + /** + * The canonical name of this endpoint. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The canonical name of this endpoint. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * Unimplemented. Dot not use. + * DEPRECATED: This field is no longer supported. Instead of using aliases, + * please specify multiple [google.api.Endpoint][google.api.Endpoint] for each + * of the intended aliases. + * Additional names that this endpoint will be hosted on. + * + * Generated from protobuf field repeated string aliases = 2 [deprecated = true]; + * @return \Google\Protobuf\Internal\RepeatedField + * @deprecated + */ + public function getAliases() + { + @\trigger_error('aliases is deprecated.', \E_USER_DEPRECATED); + return $this->aliases; + } + /** + * Unimplemented. Dot not use. + * DEPRECATED: This field is no longer supported. Instead of using aliases, + * please specify multiple [google.api.Endpoint][google.api.Endpoint] for each + * of the intended aliases. + * Additional names that this endpoint will be hosted on. + * + * Generated from protobuf field repeated string aliases = 2 [deprecated = true]; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + * @deprecated + */ + public function setAliases($var) + { + @\trigger_error('aliases is deprecated.', \E_USER_DEPRECATED); + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->aliases = $arr; + return $this; + } + /** + * The specification of an Internet routable address of API frontend that will + * handle requests to this [API + * Endpoint](https://cloud.google.com/apis/design/glossary). It should be + * either a valid IPv4 address or a fully-qualified domain name. For example, + * "8.8.8.8" or "myservice.appspot.com". + * + * Generated from protobuf field string target = 101; + * @return string + */ + public function getTarget() + { + return $this->target; + } + /** + * The specification of an Internet routable address of API frontend that will + * handle requests to this [API + * Endpoint](https://cloud.google.com/apis/design/glossary). It should be + * either a valid IPv4 address or a fully-qualified domain name. For example, + * "8.8.8.8" or "myservice.appspot.com". + * + * Generated from protobuf field string target = 101; + * @param string $var + * @return $this + */ + public function setTarget($var) + { + GPBUtil::checkString($var, True); + $this->target = $var; + return $this; + } + /** + * Allowing + * [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka + * cross-domain traffic, would allow the backends served from this endpoint to + * receive and respond to HTTP OPTIONS requests. The response will be used by + * the browser to determine whether the subsequent cross-origin request is + * allowed to proceed. + * + * Generated from protobuf field bool allow_cors = 5; + * @return bool + */ + public function getAllowCors() + { + return $this->allow_cors; + } + /** + * Allowing + * [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing), aka + * cross-domain traffic, would allow the backends served from this endpoint to + * receive and respond to HTTP OPTIONS requests. The response will be used by + * the browser to determine whether the subsequent cross-origin request is + * allowed to proceed. + * + * Generated from protobuf field bool allow_cors = 5; + * @param bool $var + * @return $this + */ + public function setAllowCors($var) + { + GPBUtil::checkBool($var); + $this->allow_cors = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ErrorReason.php b/vendor/Gcp/google/common-protos/src/Api/ErrorReason.php new file mode 100644 index 00000000..e3d6893e --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ErrorReason.php @@ -0,0 +1,594 @@ +google.api.ErrorReason + */ +class ErrorReason +{ + /** + * Do not use this default value. + * + * Generated from protobuf enum ERROR_REASON_UNSPECIFIED = 0; + */ + const ERROR_REASON_UNSPECIFIED = 0; + /** + * The request is calling a disabled service for a consumer. + * Example of an ErrorInfo when the consumer "projects/123" contacting + * "pubsub.googleapis.com" service which is disabled: + * { "reason": "SERVICE_DISABLED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "pubsub.googleapis.com" + * } + * } + * This response indicates the "pubsub.googleapis.com" has been disabled in + * "projects/123". + * + * Generated from protobuf enum SERVICE_DISABLED = 1; + */ + const SERVICE_DISABLED = 1; + /** + * The request whose associated billing account is disabled. + * Example of an ErrorInfo when the consumer "projects/123" fails to contact + * "pubsub.googleapis.com" service because the associated billing account is + * disabled: + * { "reason": "BILLING_DISABLED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "pubsub.googleapis.com" + * } + * } + * This response indicates the billing account associated has been disabled. + * + * Generated from protobuf enum BILLING_DISABLED = 2; + */ + const BILLING_DISABLED = 2; + /** + * The request is denied because the provided [API + * key](https://cloud.google.com/docs/authentication/api-keys) is invalid. It + * may be in a bad format, cannot be found, or has been expired). + * Example of an ErrorInfo when the request is contacting + * "storage.googleapis.com" service with an invalid API key: + * { "reason": "API_KEY_INVALID", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * } + * } + * + * Generated from protobuf enum API_KEY_INVALID = 3; + */ + const API_KEY_INVALID = 3; + /** + * The request is denied because it violates [API key API + * restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_api_restrictions). + * Example of an ErrorInfo when the consumer "projects/123" fails to call the + * "storage.googleapis.com" service because this service is restricted in the + * API key: + * { "reason": "API_KEY_SERVICE_BLOCKED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum API_KEY_SERVICE_BLOCKED = 4; + */ + const API_KEY_SERVICE_BLOCKED = 4; + /** + * The request is denied because it violates [API key HTTP + * restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_http_restrictions). + * Example of an ErrorInfo when the consumer "projects/123" fails to call + * "storage.googleapis.com" service because the http referrer of the request + * violates API key HTTP restrictions: + * { "reason": "API_KEY_HTTP_REFERRER_BLOCKED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com", + * } + * } + * + * Generated from protobuf enum API_KEY_HTTP_REFERRER_BLOCKED = 7; + */ + const API_KEY_HTTP_REFERRER_BLOCKED = 7; + /** + * The request is denied because it violates [API key IP address + * restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). + * Example of an ErrorInfo when the consumer "projects/123" fails to call + * "storage.googleapis.com" service because the caller IP of the request + * violates API key IP address restrictions: + * { "reason": "API_KEY_IP_ADDRESS_BLOCKED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com", + * } + * } + * + * Generated from protobuf enum API_KEY_IP_ADDRESS_BLOCKED = 8; + */ + const API_KEY_IP_ADDRESS_BLOCKED = 8; + /** + * The request is denied because it violates [API key Android application + * restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). + * Example of an ErrorInfo when the consumer "projects/123" fails to call + * "storage.googleapis.com" service because the request from the Android apps + * violates the API key Android application restrictions: + * { "reason": "API_KEY_ANDROID_APP_BLOCKED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum API_KEY_ANDROID_APP_BLOCKED = 9; + */ + const API_KEY_ANDROID_APP_BLOCKED = 9; + /** + * The request is denied because it violates [API key iOS application + * restrictions](https://cloud.google.com/docs/authentication/api-keys#adding_application_restrictions). + * Example of an ErrorInfo when the consumer "projects/123" fails to call + * "storage.googleapis.com" service because the request from the iOS apps + * violates the API key iOS application restrictions: + * { "reason": "API_KEY_IOS_APP_BLOCKED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum API_KEY_IOS_APP_BLOCKED = 13; + */ + const API_KEY_IOS_APP_BLOCKED = 13; + /** + * The request is denied because there is not enough rate quota for the + * consumer. + * Example of an ErrorInfo when the consumer "projects/123" fails to contact + * "pubsub.googleapis.com" service because consumer's rate quota usage has + * reached the maximum value set for the quota limit + * "ReadsPerMinutePerProject" on the quota metric + * "pubsub.googleapis.com/read_requests": + * { "reason": "RATE_LIMIT_EXCEEDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "pubsub.googleapis.com", + * "quota_metric": "pubsub.googleapis.com/read_requests", + * "quota_limit": "ReadsPerMinutePerProject" + * } + * } + * Example of an ErrorInfo when the consumer "projects/123" checks quota on + * the service "dataflow.googleapis.com" and hits the organization quota + * limit "DefaultRequestsPerMinutePerOrganization" on the metric + * "dataflow.googleapis.com/default_requests". + * { "reason": "RATE_LIMIT_EXCEEDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "dataflow.googleapis.com", + * "quota_metric": "dataflow.googleapis.com/default_requests", + * "quota_limit": "DefaultRequestsPerMinutePerOrganization" + * } + * } + * + * Generated from protobuf enum RATE_LIMIT_EXCEEDED = 5; + */ + const RATE_LIMIT_EXCEEDED = 5; + /** + * The request is denied because there is not enough resource quota for the + * consumer. + * Example of an ErrorInfo when the consumer "projects/123" fails to contact + * "compute.googleapis.com" service because consumer's resource quota usage + * has reached the maximum value set for the quota limit "VMsPerProject" + * on the quota metric "compute.googleapis.com/vms": + * { "reason": "RESOURCE_QUOTA_EXCEEDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "compute.googleapis.com", + * "quota_metric": "compute.googleapis.com/vms", + * "quota_limit": "VMsPerProject" + * } + * } + * Example of an ErrorInfo when the consumer "projects/123" checks resource + * quota on the service "dataflow.googleapis.com" and hits the organization + * quota limit "jobs-per-organization" on the metric + * "dataflow.googleapis.com/job_count". + * { "reason": "RESOURCE_QUOTA_EXCEEDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "dataflow.googleapis.com", + * "quota_metric": "dataflow.googleapis.com/job_count", + * "quota_limit": "jobs-per-organization" + * } + * } + * + * Generated from protobuf enum RESOURCE_QUOTA_EXCEEDED = 6; + */ + const RESOURCE_QUOTA_EXCEEDED = 6; + /** + * The request whose associated billing account address is in a tax restricted + * location, violates the local tax restrictions when creating resources in + * the restricted region. + * Example of an ErrorInfo when creating the Cloud Storage Bucket in the + * container "projects/123" under a tax restricted region + * "locations/asia-northeast3": + * { "reason": "LOCATION_TAX_POLICY_VIOLATED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com", + * "location": "locations/asia-northeast3" + * } + * } + * This response indicates creating the Cloud Storage Bucket in + * "locations/asia-northeast3" violates the location tax restriction. + * + * Generated from protobuf enum LOCATION_TAX_POLICY_VIOLATED = 10; + */ + const LOCATION_TAX_POLICY_VIOLATED = 10; + /** + * The request is denied because the caller does not have required permission + * on the user project "projects/123" or the user project is invalid. For more + * information, check the [userProject System + * Parameters](https://cloud.google.com/apis/docs/system-parameters). + * Example of an ErrorInfo when the caller is calling Cloud Storage service + * with insufficient permissions on the user project: + * { "reason": "USER_PROJECT_DENIED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum USER_PROJECT_DENIED = 11; + */ + const USER_PROJECT_DENIED = 11; + /** + * The request is denied because the consumer "projects/123" is suspended due + * to Terms of Service(Tos) violations. Check [Project suspension + * guidelines](https://cloud.google.com/resource-manager/docs/project-suspension-guidelines) + * for more information. + * Example of an ErrorInfo when calling Cloud Storage service with the + * suspended consumer "projects/123": + * { "reason": "CONSUMER_SUSPENDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum CONSUMER_SUSPENDED = 12; + */ + const CONSUMER_SUSPENDED = 12; + /** + * The request is denied because the associated consumer is invalid. It may be + * in a bad format, cannot be found, or have been deleted. + * Example of an ErrorInfo when calling Cloud Storage service with the + * invalid consumer "projects/123": + * { "reason": "CONSUMER_INVALID", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum CONSUMER_INVALID = 14; + */ + const CONSUMER_INVALID = 14; + /** + * The request is denied because it violates [VPC Service + * Controls](https://cloud.google.com/vpc-service-controls/docs/overview). + * The 'uid' field is a random generated identifier that customer can use it + * to search the audit log for a request rejected by VPC Service Controls. For + * more information, please refer [VPC Service Controls + * Troubleshooting](https://cloud.google.com/vpc-service-controls/docs/troubleshooting#unique-id) + * Example of an ErrorInfo when the consumer "projects/123" fails to call + * Cloud Storage service because the request is prohibited by the VPC Service + * Controls. + * { "reason": "SECURITY_POLICY_VIOLATED", + * "domain": "googleapis.com", + * "metadata": { + * "uid": "123456789abcde", + * "consumer": "projects/123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum SECURITY_POLICY_VIOLATED = 15; + */ + const SECURITY_POLICY_VIOLATED = 15; + /** + * The request is denied because the provided access token has expired. + * Example of an ErrorInfo when the request is calling Cloud Storage service + * with an expired access token: + * { "reason": "ACCESS_TOKEN_EXPIRED", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject" + * } + * } + * + * Generated from protobuf enum ACCESS_TOKEN_EXPIRED = 16; + */ + const ACCESS_TOKEN_EXPIRED = 16; + /** + * The request is denied because the provided access token doesn't have at + * least one of the acceptable scopes required for the API. Please check + * [OAuth 2.0 Scopes for Google + * APIs](https://developers.google.com/identity/protocols/oauth2/scopes) for + * the list of the OAuth 2.0 scopes that you might need to request to access + * the API. + * Example of an ErrorInfo when the request is calling Cloud Storage service + * with an access token that is missing required scopes: + * { "reason": "ACCESS_TOKEN_SCOPE_INSUFFICIENT", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject" + * } + * } + * + * Generated from protobuf enum ACCESS_TOKEN_SCOPE_INSUFFICIENT = 17; + */ + const ACCESS_TOKEN_SCOPE_INSUFFICIENT = 17; + /** + * The request is denied because the account associated with the provided + * access token is in an invalid state, such as disabled or deleted. + * For more information, see https://cloud.google.com/docs/authentication. + * Warning: For privacy reasons, the server may not be able to disclose the + * email address for some accounts. The client MUST NOT depend on the + * availability of the `email` attribute. + * Example of an ErrorInfo when the request is to the Cloud Storage API with + * an access token that is associated with a disabled or deleted [service + * account](http://cloud/iam/docs/service-accounts): + * { "reason": "ACCOUNT_STATE_INVALID", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject", + * "email": "user@123.iam.gserviceaccount.com" + * } + * } + * + * Generated from protobuf enum ACCOUNT_STATE_INVALID = 18; + */ + const ACCOUNT_STATE_INVALID = 18; + /** + * The request is denied because the type of the provided access token is not + * supported by the API being called. + * Example of an ErrorInfo when the request is to the Cloud Storage API with + * an unsupported token type. + * { "reason": "ACCESS_TOKEN_TYPE_UNSUPPORTED", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject" + * } + * } + * + * Generated from protobuf enum ACCESS_TOKEN_TYPE_UNSUPPORTED = 19; + */ + const ACCESS_TOKEN_TYPE_UNSUPPORTED = 19; + /** + * The request is denied because the request doesn't have any authentication + * credentials. For more information regarding the supported authentication + * strategies for Google Cloud APIs, see + * https://cloud.google.com/docs/authentication. + * Example of an ErrorInfo when the request is to the Cloud Storage API + * without any authentication credentials. + * { "reason": "CREDENTIALS_MISSING", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject" + * } + * } + * + * Generated from protobuf enum CREDENTIALS_MISSING = 20; + */ + const CREDENTIALS_MISSING = 20; + /** + * The request is denied because the provided project owning the resource + * which acts as the [API + * consumer](https://cloud.google.com/apis/design/glossary#api_consumer) is + * invalid. It may be in a bad format or empty. + * Example of an ErrorInfo when the request is to the Cloud Functions API, + * but the offered resource project in the request in a bad format which can't + * perform the ListFunctions method. + * { "reason": "RESOURCE_PROJECT_INVALID", + * "domain": "googleapis.com", + * "metadata": { + * "service": "cloudfunctions.googleapis.com", + * "method": + * "google.cloud.functions.v1.CloudFunctionsService.ListFunctions" + * } + * } + * + * Generated from protobuf enum RESOURCE_PROJECT_INVALID = 21; + */ + const RESOURCE_PROJECT_INVALID = 21; + /** + * The request is denied because the provided session cookie is missing, + * invalid or failed to decode. + * Example of an ErrorInfo when the request is calling Cloud Storage service + * with a SID cookie which can't be decoded. + * { "reason": "SESSION_COOKIE_INVALID", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject", + * "cookie": "SID" + * } + * } + * + * Generated from protobuf enum SESSION_COOKIE_INVALID = 23; + */ + const SESSION_COOKIE_INVALID = 23; + /** + * The request is denied because the user is from a Google Workspace customer + * that blocks their users from accessing a particular service. + * Example scenario: https://support.google.com/a/answer/9197205?hl=en + * Example of an ErrorInfo when access to Google Cloud Storage service is + * blocked by the Google Workspace administrator: + * { "reason": "USER_BLOCKED_BY_ADMIN", + * "domain": "googleapis.com", + * "metadata": { + * "service": "storage.googleapis.com", + * "method": "google.storage.v1.Storage.GetObject", + * } + * } + * + * Generated from protobuf enum USER_BLOCKED_BY_ADMIN = 24; + */ + const USER_BLOCKED_BY_ADMIN = 24; + /** + * The request is denied because the resource service usage is restricted + * by administrators according to the organization policy constraint. + * For more information see + * https://cloud.google.com/resource-manager/docs/organization-policy/restricting-services. + * Example of an ErrorInfo when access to Google Cloud Storage service is + * restricted by Resource Usage Restriction policy: + * { "reason": "RESOURCE_USAGE_RESTRICTION_VIOLATED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/project-123", + * "service": "storage.googleapis.com" + * } + * } + * + * Generated from protobuf enum RESOURCE_USAGE_RESTRICTION_VIOLATED = 25; + */ + const RESOURCE_USAGE_RESTRICTION_VIOLATED = 25; + /** + * Unimplemented. Do not use. + * The request is denied because it contains unsupported system parameters in + * URL query parameters or HTTP headers. For more information, + * see https://cloud.google.com/apis/docs/system-parameters + * Example of an ErrorInfo when access "pubsub.googleapis.com" service with + * a request header of "x-goog-user-ip": + * { "reason": "SYSTEM_PARAMETER_UNSUPPORTED", + * "domain": "googleapis.com", + * "metadata": { + * "service": "pubsub.googleapis.com" + * "parameter": "x-goog-user-ip" + * } + * } + * + * Generated from protobuf enum SYSTEM_PARAMETER_UNSUPPORTED = 26; + */ + const SYSTEM_PARAMETER_UNSUPPORTED = 26; + /** + * The request is denied because it violates Org Restriction: the requested + * resource does not belong to allowed organizations specified in + * "X-Goog-Allowed-Resources" header. + * Example of an ErrorInfo when accessing a GCP resource that is restricted by + * Org Restriction for "pubsub.googleapis.com" service. + * { + * reason: "ORG_RESTRICTION_VIOLATION" + * domain: "googleapis.com" + * metadata { + * "consumer":"projects/123456" + * "service": "pubsub.googleapis.com" + * } + * } + * + * Generated from protobuf enum ORG_RESTRICTION_VIOLATION = 27; + */ + const ORG_RESTRICTION_VIOLATION = 27; + /** + * The request is denied because "X-Goog-Allowed-Resources" header is in a bad + * format. + * Example of an ErrorInfo when + * accessing "pubsub.googleapis.com" service with an invalid + * "X-Goog-Allowed-Resources" request header. + * { + * reason: "ORG_RESTRICTION_HEADER_INVALID" + * domain: "googleapis.com" + * metadata { + * "consumer":"projects/123456" + * "service": "pubsub.googleapis.com" + * } + * } + * + * Generated from protobuf enum ORG_RESTRICTION_HEADER_INVALID = 28; + */ + const ORG_RESTRICTION_HEADER_INVALID = 28; + /** + * Unimplemented. Do not use. + * The request is calling a service that is not visible to the consumer. + * Example of an ErrorInfo when the consumer "projects/123" contacting + * "pubsub.googleapis.com" service which is not visible to the consumer. + * { "reason": "SERVICE_NOT_VISIBLE", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "pubsub.googleapis.com" + * } + * } + * This response indicates the "pubsub.googleapis.com" is not visible to + * "projects/123" (or it may not exist). + * + * Generated from protobuf enum SERVICE_NOT_VISIBLE = 29; + */ + const SERVICE_NOT_VISIBLE = 29; + /** + * The request is related to a project for which GCP access is suspended. + * Example of an ErrorInfo when the consumer "projects/123" fails to contact + * "pubsub.googleapis.com" service because GCP access is suspended: + * { "reason": "GCP_SUSPENDED", + * "domain": "googleapis.com", + * "metadata": { + * "consumer": "projects/123", + * "service": "pubsub.googleapis.com" + * } + * } + * This response indicates the associated GCP account has been suspended. + * + * Generated from protobuf enum GCP_SUSPENDED = 30; + */ + const GCP_SUSPENDED = 30; + private static $valueToName = [self::ERROR_REASON_UNSPECIFIED => 'ERROR_REASON_UNSPECIFIED', self::SERVICE_DISABLED => 'SERVICE_DISABLED', self::BILLING_DISABLED => 'BILLING_DISABLED', self::API_KEY_INVALID => 'API_KEY_INVALID', self::API_KEY_SERVICE_BLOCKED => 'API_KEY_SERVICE_BLOCKED', self::API_KEY_HTTP_REFERRER_BLOCKED => 'API_KEY_HTTP_REFERRER_BLOCKED', self::API_KEY_IP_ADDRESS_BLOCKED => 'API_KEY_IP_ADDRESS_BLOCKED', self::API_KEY_ANDROID_APP_BLOCKED => 'API_KEY_ANDROID_APP_BLOCKED', self::API_KEY_IOS_APP_BLOCKED => 'API_KEY_IOS_APP_BLOCKED', self::RATE_LIMIT_EXCEEDED => 'RATE_LIMIT_EXCEEDED', self::RESOURCE_QUOTA_EXCEEDED => 'RESOURCE_QUOTA_EXCEEDED', self::LOCATION_TAX_POLICY_VIOLATED => 'LOCATION_TAX_POLICY_VIOLATED', self::USER_PROJECT_DENIED => 'USER_PROJECT_DENIED', self::CONSUMER_SUSPENDED => 'CONSUMER_SUSPENDED', self::CONSUMER_INVALID => 'CONSUMER_INVALID', self::SECURITY_POLICY_VIOLATED => 'SECURITY_POLICY_VIOLATED', self::ACCESS_TOKEN_EXPIRED => 'ACCESS_TOKEN_EXPIRED', self::ACCESS_TOKEN_SCOPE_INSUFFICIENT => 'ACCESS_TOKEN_SCOPE_INSUFFICIENT', self::ACCOUNT_STATE_INVALID => 'ACCOUNT_STATE_INVALID', self::ACCESS_TOKEN_TYPE_UNSUPPORTED => 'ACCESS_TOKEN_TYPE_UNSUPPORTED', self::CREDENTIALS_MISSING => 'CREDENTIALS_MISSING', self::RESOURCE_PROJECT_INVALID => 'RESOURCE_PROJECT_INVALID', self::SESSION_COOKIE_INVALID => 'SESSION_COOKIE_INVALID', self::USER_BLOCKED_BY_ADMIN => 'USER_BLOCKED_BY_ADMIN', self::RESOURCE_USAGE_RESTRICTION_VIOLATED => 'RESOURCE_USAGE_RESTRICTION_VIOLATED', self::SYSTEM_PARAMETER_UNSUPPORTED => 'SYSTEM_PARAMETER_UNSUPPORTED', self::ORG_RESTRICTION_VIOLATION => 'ORG_RESTRICTION_VIOLATION', self::ORG_RESTRICTION_HEADER_INVALID => 'ORG_RESTRICTION_HEADER_INVALID', self::SERVICE_NOT_VISIBLE => 'SERVICE_NOT_VISIBLE', self::GCP_SUSPENDED => 'GCP_SUSPENDED']; + 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/vendor/Gcp/google/common-protos/src/Api/FieldBehavior.php b/vendor/Gcp/google/common-protos/src/Api/FieldBehavior.php new file mode 100644 index 00000000..44f014c2 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/FieldBehavior.php @@ -0,0 +1,115 @@ +google.api.FieldBehavior + */ +class FieldBehavior +{ + /** + * Conventional default for enums. Do not use this. + * + * Generated from protobuf enum FIELD_BEHAVIOR_UNSPECIFIED = 0; + */ + const FIELD_BEHAVIOR_UNSPECIFIED = 0; + /** + * Specifically denotes a field as optional. + * While all fields in protocol buffers are optional, this may be specified + * for emphasis if appropriate. + * + * Generated from protobuf enum OPTIONAL = 1; + */ + const OPTIONAL = 1; + /** + * Denotes a field as required. + * This indicates that the field **must** be provided as part of the request, + * and failure to do so will cause an error (usually `INVALID_ARGUMENT`). + * + * Generated from protobuf enum REQUIRED = 2; + */ + const REQUIRED = 2; + /** + * Denotes a field as output only. + * This indicates that the field is provided in responses, but including the + * field in a request does nothing (the server *must* ignore it and + * *must not* throw an error as a result of the field's presence). + * + * Generated from protobuf enum OUTPUT_ONLY = 3; + */ + const OUTPUT_ONLY = 3; + /** + * Denotes a field as input only. + * This indicates that the field is provided in requests, and the + * corresponding field is not included in output. + * + * Generated from protobuf enum INPUT_ONLY = 4; + */ + const INPUT_ONLY = 4; + /** + * Denotes a field as immutable. + * This indicates that the field may be set once in a request to create a + * resource, but may not be changed thereafter. + * + * Generated from protobuf enum IMMUTABLE = 5; + */ + const IMMUTABLE = 5; + /** + * Denotes that a (repeated) field is an unordered list. + * This indicates that the service may provide the elements of the list + * in any arbitrary order, rather than the order the user originally + * provided. Additionally, the list's order may or may not be stable. + * + * Generated from protobuf enum UNORDERED_LIST = 6; + */ + const UNORDERED_LIST = 6; + /** + * Denotes that this field returns a non-empty default value if not set. + * This indicates that if the user provides the empty value in a request, + * a non-empty value will be returned. The user will not be aware of what + * non-empty value to expect. + * + * Generated from protobuf enum NON_EMPTY_DEFAULT = 7; + */ + const NON_EMPTY_DEFAULT = 7; + /** + * Denotes that the field in a resource (a message annotated with + * google.api.resource) is used in the resource name to uniquely identify the + * resource. For AIP-compliant APIs, this should only be applied to the + * `name` field on the resource. + * This behavior should not be applied to references to other resources within + * the message. + * The identifier field of resources often have different field behavior + * depending on the request it is embedded in (e.g. for Create methods name + * is optional and unused, while for Update methods it is required). Instead + * of method-specific annotations, only `IDENTIFIER` is required. + * + * Generated from protobuf enum IDENTIFIER = 8; + */ + const IDENTIFIER = 8; + private static $valueToName = [self::FIELD_BEHAVIOR_UNSPECIFIED => 'FIELD_BEHAVIOR_UNSPECIFIED', self::OPTIONAL => 'OPTIONAL', self::REQUIRED => 'REQUIRED', self::OUTPUT_ONLY => 'OUTPUT_ONLY', self::INPUT_ONLY => 'INPUT_ONLY', self::IMMUTABLE => 'IMMUTABLE', self::UNORDERED_LIST => 'UNORDERED_LIST', self::NON_EMPTY_DEFAULT => 'NON_EMPTY_DEFAULT', self::IDENTIFIER => 'IDENTIFIER']; + 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/vendor/Gcp/google/common-protos/src/Api/FieldInfo.php b/vendor/Gcp/google/common-protos/src/Api/FieldInfo.php new file mode 100644 index 00000000..f88ebbe2 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/FieldInfo.php @@ -0,0 +1,69 @@ +google.api.FieldInfo + */ +class FieldInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The standard format of a field value. This does not explicitly configure + * any API consumer, just documents the API's format for the field it is + * applied to. + * + * Generated from protobuf field .google.api.FieldInfo.Format format = 1; + */ + protected $format = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $format + * The standard format of a field value. This does not explicitly configure + * any API consumer, just documents the API's format for the field it is + * applied to. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\FieldInfo::initOnce(); + parent::__construct($data); + } + /** + * The standard format of a field value. This does not explicitly configure + * any API consumer, just documents the API's format for the field it is + * applied to. + * + * Generated from protobuf field .google.api.FieldInfo.Format format = 1; + * @return int + */ + public function getFormat() + { + return $this->format; + } + /** + * The standard format of a field value. This does not explicitly configure + * any API consumer, just documents the API's format for the field it is + * applied to. + * + * Generated from protobuf field .google.api.FieldInfo.Format format = 1; + * @param int $var + * @return $this + */ + public function setFormat($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\FieldInfo\Format::class); + $this->format = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/FieldInfo/Format.php b/vendor/Gcp/google/common-protos/src/Api/FieldInfo/Format.php new file mode 100644 index 00000000..355dafe1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/FieldInfo/Format.php @@ -0,0 +1,75 @@ +google.api.FieldInfo.Format + */ +class Format +{ + /** + * Default, unspecified value. + * + * Generated from protobuf enum FORMAT_UNSPECIFIED = 0; + */ + const FORMAT_UNSPECIFIED = 0; + /** + * Universally Unique Identifier, version 4, value as defined by + * https://datatracker.ietf.org/doc/html/rfc4122. The value may be + * normalized to entirely lowercase letters. For example, the value + * `F47AC10B-58CC-0372-8567-0E02B2C3D479` would be normalized to + * `f47ac10b-58cc-0372-8567-0e02b2c3d479`. + * + * Generated from protobuf enum UUID4 = 1; + */ + const UUID4 = 1; + /** + * Internet Protocol v4 value as defined by [RFC + * 791](https://datatracker.ietf.org/doc/html/rfc791). The value may be + * condensed, with leading zeros in each octet stripped. For example, + * `001.022.233.040` would be condensed to `1.22.233.40`. + * + * Generated from protobuf enum IPV4 = 2; + */ + const IPV4 = 2; + /** + * Internet Protocol v6 value as defined by [RFC + * 2460](https://datatracker.ietf.org/doc/html/rfc2460). The value may be + * normalized to entirely lowercase letters, and zero-padded partial and + * empty octets. For example, the value `2001:DB8::` would be normalized to + * `2001:0db8:0:0`. + * + * Generated from protobuf enum IPV6 = 3; + */ + const IPV6 = 3; + /** + * An IP address in either v4 or v6 format as described by the individual + * values defined herein. See the comments on the IPV4 and IPV6 types for + * allowed normalizations of each. + * + * Generated from protobuf enum IPV4_OR_IPV6 = 4; + */ + const IPV4_OR_IPV6 = 4; + private static $valueToName = [self::FORMAT_UNSPECIFIED => 'FORMAT_UNSPECIFIED', self::UUID4 => 'UUID4', self::IPV4 => 'IPV4', self::IPV6 => 'IPV6', self::IPV4_OR_IPV6 => 'IPV4_OR_IPV6']; + 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/vendor/Gcp/google/common-protos/src/Api/FieldPolicy.php b/vendor/Gcp/google/common-protos/src/Api/FieldPolicy.php new file mode 100644 index 00000000..2d5cb0a1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/FieldPolicy.php @@ -0,0 +1,169 @@ +google.api.FieldPolicy + */ +class FieldPolicy extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects one or more request or response message fields to apply this + * `FieldPolicy`. + * When a `FieldPolicy` is used in proto annotation, the selector must + * be left as empty. The service config generator will automatically fill + * the correct value. + * When a `FieldPolicy` is used in service config, the selector must be a + * comma-separated string with valid request or response field paths, + * such as "foo.bar" or "foo.bar,foo.baz". + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * Specifies the required permission(s) for the resource referred to by the + * field. It requires the field contains a valid resource reference, and + * the request must pass the permission checks to proceed. For example, + * "resourcemanager.projects.get". + * + * Generated from protobuf field string resource_permission = 2; + */ + protected $resource_permission = ''; + /** + * Specifies the resource type for the resource referred to by the field. + * + * Generated from protobuf field string resource_type = 3; + */ + protected $resource_type = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects one or more request or response message fields to apply this + * `FieldPolicy`. + * When a `FieldPolicy` is used in proto annotation, the selector must + * be left as empty. The service config generator will automatically fill + * the correct value. + * When a `FieldPolicy` is used in service config, the selector must be a + * comma-separated string with valid request or response field paths, + * such as "foo.bar" or "foo.bar,foo.baz". + * @type string $resource_permission + * Specifies the required permission(s) for the resource referred to by the + * field. It requires the field contains a valid resource reference, and + * the request must pass the permission checks to proceed. For example, + * "resourcemanager.projects.get". + * @type string $resource_type + * Specifies the resource type for the resource referred to by the field. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Policy::initOnce(); + parent::__construct($data); + } + /** + * Selects one or more request or response message fields to apply this + * `FieldPolicy`. + * When a `FieldPolicy` is used in proto annotation, the selector must + * be left as empty. The service config generator will automatically fill + * the correct value. + * When a `FieldPolicy` is used in service config, the selector must be a + * comma-separated string with valid request or response field paths, + * such as "foo.bar" or "foo.bar,foo.baz". + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects one or more request or response message fields to apply this + * `FieldPolicy`. + * When a `FieldPolicy` is used in proto annotation, the selector must + * be left as empty. The service config generator will automatically fill + * the correct value. + * When a `FieldPolicy` is used in service config, the selector must be a + * comma-separated string with valid request or response field paths, + * such as "foo.bar" or "foo.bar,foo.baz". + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Specifies the required permission(s) for the resource referred to by the + * field. It requires the field contains a valid resource reference, and + * the request must pass the permission checks to proceed. For example, + * "resourcemanager.projects.get". + * + * Generated from protobuf field string resource_permission = 2; + * @return string + */ + public function getResourcePermission() + { + return $this->resource_permission; + } + /** + * Specifies the required permission(s) for the resource referred to by the + * field. It requires the field contains a valid resource reference, and + * the request must pass the permission checks to proceed. For example, + * "resourcemanager.projects.get". + * + * Generated from protobuf field string resource_permission = 2; + * @param string $var + * @return $this + */ + public function setResourcePermission($var) + { + GPBUtil::checkString($var, True); + $this->resource_permission = $var; + return $this; + } + /** + * Specifies the resource type for the resource referred to by the field. + * + * Generated from protobuf field string resource_type = 3; + * @return string + */ + public function getResourceType() + { + return $this->resource_type; + } + /** + * Specifies the resource type for the resource referred to by the field. + * + * Generated from protobuf field string resource_type = 3; + * @param string $var + * @return $this + */ + public function setResourceType($var) + { + GPBUtil::checkString($var, True); + $this->resource_type = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/GoSettings.php b/vendor/Gcp/google/common-protos/src/Api/GoSettings.php new file mode 100644 index 00000000..8a9af51e --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/GoSettings.php @@ -0,0 +1,69 @@ +google.api.GoSettings + */ +class GoSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Http.php b/vendor/Gcp/google/common-protos/src/Api/Http.php new file mode 100644 index 00000000..3c18d518 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Http.php @@ -0,0 +1,114 @@ +google.api.Http + */ +class Http extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of HTTP configuration rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.HttpRule rules = 1; + */ + private $rules; + /** + * When set to true, URL path parameters will be fully URI-decoded except in + * cases of single segment matches in reserved expansion, where "%2F" will be + * left encoded. + * The default behavior is to not decode RFC 6570 reserved characters in multi + * segment matches. + * + * Generated from protobuf field bool fully_decode_reserved_expansion = 2; + */ + protected $fully_decode_reserved_expansion = \false; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\HttpRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of HTTP configuration rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * @type bool $fully_decode_reserved_expansion + * When set to true, URL path parameters will be fully URI-decoded except in + * cases of single segment matches in reserved expansion, where "%2F" will be + * left encoded. + * The default behavior is to not decode RFC 6570 reserved characters in multi + * segment matches. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Http::initOnce(); + parent::__construct($data); + } + /** + * A list of HTTP configuration rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.HttpRule rules = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of HTTP configuration rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.HttpRule rules = 1; + * @param array<\Google\Api\HttpRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\HttpRule::class); + $this->rules = $arr; + return $this; + } + /** + * When set to true, URL path parameters will be fully URI-decoded except in + * cases of single segment matches in reserved expansion, where "%2F" will be + * left encoded. + * The default behavior is to not decode RFC 6570 reserved characters in multi + * segment matches. + * + * Generated from protobuf field bool fully_decode_reserved_expansion = 2; + * @return bool + */ + public function getFullyDecodeReservedExpansion() + { + return $this->fully_decode_reserved_expansion; + } + /** + * When set to true, URL path parameters will be fully URI-decoded except in + * cases of single segment matches in reserved expansion, where "%2F" will be + * left encoded. + * The default behavior is to not decode RFC 6570 reserved characters in multi + * segment matches. + * + * Generated from protobuf field bool fully_decode_reserved_expansion = 2; + * @param bool $var + * @return $this + */ + public function setFullyDecodeReservedExpansion($var) + { + GPBUtil::checkBool($var); + $this->fully_decode_reserved_expansion = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/HttpBody.php b/vendor/Gcp/google/common-protos/src/Api/HttpBody.php new file mode 100644 index 00000000..0ae9efdc --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/HttpBody.php @@ -0,0 +1,156 @@ +google.api.HttpBody + */ +class HttpBody extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The HTTP Content-Type header value specifying the content type of the body. + * + * Generated from protobuf field string content_type = 1; + */ + protected $content_type = ''; + /** + * The HTTP request/response body as raw binary. + * + * Generated from protobuf field bytes data = 2; + */ + protected $data = ''; + /** + * Application specific response metadata. Must be set in the first response + * for streaming APIs. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 3; + */ + private $extensions; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $content_type + * The HTTP Content-Type header value specifying the content type of the body. + * @type string $data + * The HTTP request/response body as raw binary. + * @type array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $extensions + * Application specific response metadata. Must be set in the first response + * for streaming APIs. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Httpbody::initOnce(); + parent::__construct($data); + } + /** + * The HTTP Content-Type header value specifying the content type of the body. + * + * Generated from protobuf field string content_type = 1; + * @return string + */ + public function getContentType() + { + return $this->content_type; + } + /** + * The HTTP Content-Type header value specifying the content type of the body. + * + * Generated from protobuf field string content_type = 1; + * @param string $var + * @return $this + */ + public function setContentType($var) + { + GPBUtil::checkString($var, True); + $this->content_type = $var; + return $this; + } + /** + * The HTTP request/response body as raw binary. + * + * Generated from protobuf field bytes data = 2; + * @return string + */ + public function getData() + { + return $this->data; + } + /** + * The HTTP request/response body as raw binary. + * + * Generated from protobuf field bytes data = 2; + * @param string $var + * @return $this + */ + public function setData($var) + { + GPBUtil::checkString($var, False); + $this->data = $var; + return $this; + } + /** + * Application specific response metadata. Must be set in the first response + * for streaming APIs. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getExtensions() + { + return $this->extensions; + } + /** + * Application specific response metadata. Must be set in the first response + * for streaming APIs. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 3; + * @param array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setExtensions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->extensions = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/HttpRule.php b/vendor/Gcp/google/common-protos/src/Api/HttpRule.php new file mode 100644 index 00000000..cc1dcee4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/HttpRule.php @@ -0,0 +1,620 @@ +google.api.HttpRule + */ +class HttpRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects a method to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * The name of the request field whose value is mapped to the HTTP request + * body, or `*` for mapping all request fields not captured by the path + * pattern to the HTTP body, or omitted for not having any HTTP request body. + * NOTE: the referred field must be present at the top-level of the request + * message type. + * + * Generated from protobuf field string body = 7; + */ + protected $body = ''; + /** + * Optional. The name of the response field whose value is mapped to the HTTP + * response body. When omitted, the entire response message will be used + * as the HTTP response body. + * NOTE: The referred field must be present at the top-level of the response + * message type. + * + * Generated from protobuf field string response_body = 12; + */ + protected $response_body = ''; + /** + * Additional HTTP bindings for the selector. Nested bindings must + * not contain an `additional_bindings` field themselves (that is, + * the nesting may only be one level deep). + * + * Generated from protobuf field repeated .google.api.HttpRule additional_bindings = 11; + */ + private $additional_bindings; + protected $pattern; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects a method to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type string $get + * Maps to HTTP GET. Used for listing and getting information about + * resources. + * @type string $put + * Maps to HTTP PUT. Used for replacing a resource. + * @type string $post + * Maps to HTTP POST. Used for creating a resource or performing an action. + * @type string $delete + * Maps to HTTP DELETE. Used for deleting a resource. + * @type string $patch + * Maps to HTTP PATCH. Used for updating a resource. + * @type \Google\Api\CustomHttpPattern $custom + * The custom pattern is used for specifying an HTTP method that is not + * included in the `pattern` field, such as HEAD, or "*" to leave the + * HTTP method unspecified for this rule. The wild-card rule is useful + * for services that provide content to Web (HTML) clients. + * @type string $body + * The name of the request field whose value is mapped to the HTTP request + * body, or `*` for mapping all request fields not captured by the path + * pattern to the HTTP body, or omitted for not having any HTTP request body. + * NOTE: the referred field must be present at the top-level of the request + * message type. + * @type string $response_body + * Optional. The name of the response field whose value is mapped to the HTTP + * response body. When omitted, the entire response message will be used + * as the HTTP response body. + * NOTE: The referred field must be present at the top-level of the response + * message type. + * @type array<\Google\Api\HttpRule>|\Google\Protobuf\Internal\RepeatedField $additional_bindings + * Additional HTTP bindings for the selector. Nested bindings must + * not contain an `additional_bindings` field themselves (that is, + * the nesting may only be one level deep). + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Http::initOnce(); + parent::__construct($data); + } + /** + * Selects a method to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects a method to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Maps to HTTP GET. Used for listing and getting information about + * resources. + * + * Generated from protobuf field string get = 2; + * @return string + */ + public function getGet() + { + return $this->readOneof(2); + } + public function hasGet() + { + return $this->hasOneof(2); + } + /** + * Maps to HTTP GET. Used for listing and getting information about + * resources. + * + * Generated from protobuf field string get = 2; + * @param string $var + * @return $this + */ + public function setGet($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(2, $var); + return $this; + } + /** + * Maps to HTTP PUT. Used for replacing a resource. + * + * Generated from protobuf field string put = 3; + * @return string + */ + public function getPut() + { + return $this->readOneof(3); + } + public function hasPut() + { + return $this->hasOneof(3); + } + /** + * Maps to HTTP PUT. Used for replacing a resource. + * + * Generated from protobuf field string put = 3; + * @param string $var + * @return $this + */ + public function setPut($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(3, $var); + return $this; + } + /** + * Maps to HTTP POST. Used for creating a resource or performing an action. + * + * Generated from protobuf field string post = 4; + * @return string + */ + public function getPost() + { + return $this->readOneof(4); + } + public function hasPost() + { + return $this->hasOneof(4); + } + /** + * Maps to HTTP POST. Used for creating a resource or performing an action. + * + * Generated from protobuf field string post = 4; + * @param string $var + * @return $this + */ + public function setPost($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(4, $var); + return $this; + } + /** + * Maps to HTTP DELETE. Used for deleting a resource. + * + * Generated from protobuf field string delete = 5; + * @return string + */ + public function getDelete() + { + return $this->readOneof(5); + } + public function hasDelete() + { + return $this->hasOneof(5); + } + /** + * Maps to HTTP DELETE. Used for deleting a resource. + * + * Generated from protobuf field string delete = 5; + * @param string $var + * @return $this + */ + public function setDelete($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(5, $var); + return $this; + } + /** + * Maps to HTTP PATCH. Used for updating a resource. + * + * Generated from protobuf field string patch = 6; + * @return string + */ + public function getPatch() + { + return $this->readOneof(6); + } + public function hasPatch() + { + return $this->hasOneof(6); + } + /** + * Maps to HTTP PATCH. Used for updating a resource. + * + * Generated from protobuf field string patch = 6; + * @param string $var + * @return $this + */ + public function setPatch($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(6, $var); + return $this; + } + /** + * The custom pattern is used for specifying an HTTP method that is not + * included in the `pattern` field, such as HEAD, or "*" to leave the + * HTTP method unspecified for this rule. The wild-card rule is useful + * for services that provide content to Web (HTML) clients. + * + * Generated from protobuf field .google.api.CustomHttpPattern custom = 8; + * @return \Google\Api\CustomHttpPattern|null + */ + public function getCustom() + { + return $this->readOneof(8); + } + public function hasCustom() + { + return $this->hasOneof(8); + } + /** + * The custom pattern is used for specifying an HTTP method that is not + * included in the `pattern` field, such as HEAD, or "*" to leave the + * HTTP method unspecified for this rule. The wild-card rule is useful + * for services that provide content to Web (HTML) clients. + * + * Generated from protobuf field .google.api.CustomHttpPattern custom = 8; + * @param \Google\Api\CustomHttpPattern $var + * @return $this + */ + public function setCustom($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CustomHttpPattern::class); + $this->writeOneof(8, $var); + return $this; + } + /** + * The name of the request field whose value is mapped to the HTTP request + * body, or `*` for mapping all request fields not captured by the path + * pattern to the HTTP body, or omitted for not having any HTTP request body. + * NOTE: the referred field must be present at the top-level of the request + * message type. + * + * Generated from protobuf field string body = 7; + * @return string + */ + public function getBody() + { + return $this->body; + } + /** + * The name of the request field whose value is mapped to the HTTP request + * body, or `*` for mapping all request fields not captured by the path + * pattern to the HTTP body, or omitted for not having any HTTP request body. + * NOTE: the referred field must be present at the top-level of the request + * message type. + * + * Generated from protobuf field string body = 7; + * @param string $var + * @return $this + */ + public function setBody($var) + { + GPBUtil::checkString($var, True); + $this->body = $var; + return $this; + } + /** + * Optional. The name of the response field whose value is mapped to the HTTP + * response body. When omitted, the entire response message will be used + * as the HTTP response body. + * NOTE: The referred field must be present at the top-level of the response + * message type. + * + * Generated from protobuf field string response_body = 12; + * @return string + */ + public function getResponseBody() + { + return $this->response_body; + } + /** + * Optional. The name of the response field whose value is mapped to the HTTP + * response body. When omitted, the entire response message will be used + * as the HTTP response body. + * NOTE: The referred field must be present at the top-level of the response + * message type. + * + * Generated from protobuf field string response_body = 12; + * @param string $var + * @return $this + */ + public function setResponseBody($var) + { + GPBUtil::checkString($var, True); + $this->response_body = $var; + return $this; + } + /** + * Additional HTTP bindings for the selector. Nested bindings must + * not contain an `additional_bindings` field themselves (that is, + * the nesting may only be one level deep). + * + * Generated from protobuf field repeated .google.api.HttpRule additional_bindings = 11; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAdditionalBindings() + { + return $this->additional_bindings; + } + /** + * Additional HTTP bindings for the selector. Nested bindings must + * not contain an `additional_bindings` field themselves (that is, + * the nesting may only be one level deep). + * + * Generated from protobuf field repeated .google.api.HttpRule additional_bindings = 11; + * @param array<\Google\Api\HttpRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAdditionalBindings($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\HttpRule::class); + $this->additional_bindings = $arr; + return $this; + } + /** + * @return string + */ + public function getPattern() + { + return $this->whichOneof("pattern"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/JavaSettings.php b/vendor/Gcp/google/common-protos/src/Api/JavaSettings.php new file mode 100644 index 00000000..9d200937 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/JavaSettings.php @@ -0,0 +1,207 @@ +google.api.JavaSettings + */ +class JavaSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The package name to use in Java. Clobbers the java_package option + * set in the protobuf. This should be used **only** by APIs + * who have already set the language_settings.java.package_name" field + * in gapic.yaml. API teams should use the protobuf java_package option + * where possible. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * library_package: com.google.cloud.pubsub.v1 + * + * Generated from protobuf field string library_package = 1; + */ + protected $library_package = ''; + /** + * Configure the Java class name to use instead of the service's for its + * corresponding generated GAPIC client. Keys are fully-qualified + * service names as they appear in the protobuf (including the full + * the language_settings.java.interface_names" field in gapic.yaml. API + * teams should otherwise use the service name as it appears in the + * protobuf. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * service_class_names: + * - google.pubsub.v1.Publisher: TopicAdmin + * - google.pubsub.v1.Subscriber: SubscriptionAdmin + * + * Generated from protobuf field map service_class_names = 2; + */ + private $service_class_names; + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 3; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $library_package + * The package name to use in Java. Clobbers the java_package option + * set in the protobuf. This should be used **only** by APIs + * who have already set the language_settings.java.package_name" field + * in gapic.yaml. API teams should use the protobuf java_package option + * where possible. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * library_package: com.google.cloud.pubsub.v1 + * @type array|\Google\Protobuf\Internal\MapField $service_class_names + * Configure the Java class name to use instead of the service's for its + * corresponding generated GAPIC client. Keys are fully-qualified + * service names as they appear in the protobuf (including the full + * the language_settings.java.interface_names" field in gapic.yaml. API + * teams should otherwise use the service name as it appears in the + * protobuf. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * service_class_names: + * - google.pubsub.v1.Publisher: TopicAdmin + * - google.pubsub.v1.Subscriber: SubscriptionAdmin + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * The package name to use in Java. Clobbers the java_package option + * set in the protobuf. This should be used **only** by APIs + * who have already set the language_settings.java.package_name" field + * in gapic.yaml. API teams should use the protobuf java_package option + * where possible. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * library_package: com.google.cloud.pubsub.v1 + * + * Generated from protobuf field string library_package = 1; + * @return string + */ + public function getLibraryPackage() + { + return $this->library_package; + } + /** + * The package name to use in Java. Clobbers the java_package option + * set in the protobuf. This should be used **only** by APIs + * who have already set the language_settings.java.package_name" field + * in gapic.yaml. API teams should use the protobuf java_package option + * where possible. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * library_package: com.google.cloud.pubsub.v1 + * + * Generated from protobuf field string library_package = 1; + * @param string $var + * @return $this + */ + public function setLibraryPackage($var) + { + GPBUtil::checkString($var, True); + $this->library_package = $var; + return $this; + } + /** + * Configure the Java class name to use instead of the service's for its + * corresponding generated GAPIC client. Keys are fully-qualified + * service names as they appear in the protobuf (including the full + * the language_settings.java.interface_names" field in gapic.yaml. API + * teams should otherwise use the service name as it appears in the + * protobuf. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * service_class_names: + * - google.pubsub.v1.Publisher: TopicAdmin + * - google.pubsub.v1.Subscriber: SubscriptionAdmin + * + * Generated from protobuf field map service_class_names = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getServiceClassNames() + { + return $this->service_class_names; + } + /** + * Configure the Java class name to use instead of the service's for its + * corresponding generated GAPIC client. Keys are fully-qualified + * service names as they appear in the protobuf (including the full + * the language_settings.java.interface_names" field in gapic.yaml. API + * teams should otherwise use the service name as it appears in the + * protobuf. + * Example of a YAML configuration:: + * publishing: + * java_settings: + * service_class_names: + * - google.pubsub.v1.Publisher: TopicAdmin + * - google.pubsub.v1.Subscriber: SubscriptionAdmin + * + * Generated from protobuf field map service_class_names = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setServiceClassNames($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->service_class_names = $arr; + return $this; + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 3; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 3; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/JwtLocation.php b/vendor/Gcp/google/common-protos/src/Api/JwtLocation.php new file mode 100644 index 00000000..a537ea17 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/JwtLocation.php @@ -0,0 +1,180 @@ +google.api.JwtLocation + */ +class JwtLocation extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The value prefix. The value format is "value_prefix{token}" + * Only applies to "in" header type. Must be empty for "in" query type. + * If not empty, the header value has to match (case sensitive) this prefix. + * If not matched, JWT will not be extracted. If matched, JWT will be + * extracted after the prefix is removed. + * For example, for "Authorization: Bearer {JWT}", + * value_prefix="Bearer " with a space at the end. + * + * Generated from protobuf field string value_prefix = 3; + */ + protected $value_prefix = ''; + protected $in; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $header + * Specifies HTTP header name to extract JWT token. + * @type string $query + * Specifies URL query parameter name to extract JWT token. + * @type string $cookie + * Specifies cookie name to extract JWT token. + * @type string $value_prefix + * The value prefix. The value format is "value_prefix{token}" + * Only applies to "in" header type. Must be empty for "in" query type. + * If not empty, the header value has to match (case sensitive) this prefix. + * If not matched, JWT will not be extracted. If matched, JWT will be + * extracted after the prefix is removed. + * For example, for "Authorization: Bearer {JWT}", + * value_prefix="Bearer " with a space at the end. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * Specifies HTTP header name to extract JWT token. + * + * Generated from protobuf field string header = 1; + * @return string + */ + public function getHeader() + { + return $this->readOneof(1); + } + public function hasHeader() + { + return $this->hasOneof(1); + } + /** + * Specifies HTTP header name to extract JWT token. + * + * Generated from protobuf field string header = 1; + * @param string $var + * @return $this + */ + public function setHeader($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(1, $var); + return $this; + } + /** + * Specifies URL query parameter name to extract JWT token. + * + * Generated from protobuf field string query = 2; + * @return string + */ + public function getQuery() + { + return $this->readOneof(2); + } + public function hasQuery() + { + return $this->hasOneof(2); + } + /** + * Specifies URL query parameter name to extract JWT token. + * + * Generated from protobuf field string query = 2; + * @param string $var + * @return $this + */ + public function setQuery($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(2, $var); + return $this; + } + /** + * Specifies cookie name to extract JWT token. + * + * Generated from protobuf field string cookie = 4; + * @return string + */ + public function getCookie() + { + return $this->readOneof(4); + } + public function hasCookie() + { + return $this->hasOneof(4); + } + /** + * Specifies cookie name to extract JWT token. + * + * Generated from protobuf field string cookie = 4; + * @param string $var + * @return $this + */ + public function setCookie($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(4, $var); + return $this; + } + /** + * The value prefix. The value format is "value_prefix{token}" + * Only applies to "in" header type. Must be empty for "in" query type. + * If not empty, the header value has to match (case sensitive) this prefix. + * If not matched, JWT will not be extracted. If matched, JWT will be + * extracted after the prefix is removed. + * For example, for "Authorization: Bearer {JWT}", + * value_prefix="Bearer " with a space at the end. + * + * Generated from protobuf field string value_prefix = 3; + * @return string + */ + public function getValuePrefix() + { + return $this->value_prefix; + } + /** + * The value prefix. The value format is "value_prefix{token}" + * Only applies to "in" header type. Must be empty for "in" query type. + * If not empty, the header value has to match (case sensitive) this prefix. + * If not matched, JWT will not be extracted. If matched, JWT will be + * extracted after the prefix is removed. + * For example, for "Authorization: Bearer {JWT}", + * value_prefix="Bearer " with a space at the end. + * + * Generated from protobuf field string value_prefix = 3; + * @param string $var + * @return $this + */ + public function setValuePrefix($var) + { + GPBUtil::checkString($var, True); + $this->value_prefix = $var; + return $this; + } + /** + * @return string + */ + public function getIn() + { + return $this->whichOneof("in"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor.php b/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor.php new file mode 100644 index 00000000..d8079b70 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor.php @@ -0,0 +1,123 @@ +google.api.LabelDescriptor + */ +class LabelDescriptor extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The label key. + * + * Generated from protobuf field string key = 1; + */ + protected $key = ''; + /** + * The type of data that can be assigned to the label. + * + * Generated from protobuf field .google.api.LabelDescriptor.ValueType value_type = 2; + */ + protected $value_type = 0; + /** + * A human-readable description for the label. + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $key + * The label key. + * @type int $value_type + * The type of data that can be assigned to the label. + * @type string $description + * A human-readable description for the label. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Label::initOnce(); + parent::__construct($data); + } + /** + * The label key. + * + * Generated from protobuf field string key = 1; + * @return string + */ + public function getKey() + { + return $this->key; + } + /** + * The label key. + * + * Generated from protobuf field string key = 1; + * @param string $var + * @return $this + */ + public function setKey($var) + { + GPBUtil::checkString($var, True); + $this->key = $var; + return $this; + } + /** + * The type of data that can be assigned to the label. + * + * Generated from protobuf field .google.api.LabelDescriptor.ValueType value_type = 2; + * @return int + */ + public function getValueType() + { + return $this->value_type; + } + /** + * The type of data that can be assigned to the label. + * + * Generated from protobuf field .google.api.LabelDescriptor.ValueType value_type = 2; + * @param int $var + * @return $this + */ + public function setValueType($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LabelDescriptor\ValueType::class); + $this->value_type = $var; + return $this; + } + /** + * A human-readable description for the label. + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A human-readable description for the label. + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor/ValueType.php b/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor/ValueType.php new file mode 100644 index 00000000..c556b80d --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/LabelDescriptor/ValueType.php @@ -0,0 +1,49 @@ +google.api.LabelDescriptor.ValueType + */ +class ValueType +{ + /** + * A variable-length string. This is the default. + * + * Generated from protobuf enum STRING = 0; + */ + const STRING = 0; + /** + * Boolean; true or false. + * + * Generated from protobuf enum BOOL = 1; + */ + const BOOL = 1; + /** + * A 64-bit signed integer. + * + * Generated from protobuf enum INT64 = 2; + */ + const INT64 = 2; + private static $valueToName = [self::STRING => 'STRING', self::BOOL => 'BOOL', self::INT64 => 'INT64']; + 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/vendor/Gcp/google/common-protos/src/Api/LaunchStage.php b/vendor/Gcp/google/common-protos/src/Api/LaunchStage.php new file mode 100644 index 00000000..bf497741 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/LaunchStage.php @@ -0,0 +1,101 @@ +google.api.LaunchStage + */ +class LaunchStage +{ + /** + * Do not use this default value. + * + * Generated from protobuf enum LAUNCH_STAGE_UNSPECIFIED = 0; + */ + const LAUNCH_STAGE_UNSPECIFIED = 0; + /** + * The feature is not yet implemented. Users can not use it. + * + * Generated from protobuf enum UNIMPLEMENTED = 6; + */ + const UNIMPLEMENTED = 6; + /** + * Prelaunch features are hidden from users and are only visible internally. + * + * Generated from protobuf enum PRELAUNCH = 7; + */ + const PRELAUNCH = 7; + /** + * Early Access features are limited to a closed group of testers. To use + * these features, you must sign up in advance and sign a Trusted Tester + * agreement (which includes confidentiality provisions). These features may + * be unstable, changed in backward-incompatible ways, and are not + * guaranteed to be released. + * + * Generated from protobuf enum EARLY_ACCESS = 1; + */ + const EARLY_ACCESS = 1; + /** + * Alpha is a limited availability test for releases before they are cleared + * for widespread use. By Alpha, all significant design issues are resolved + * and we are in the process of verifying functionality. Alpha customers + * need to apply for access, agree to applicable terms, and have their + * projects allowlisted. Alpha releases don't have to be feature complete, + * no SLAs are provided, and there are no technical support obligations, but + * they will be far enough along that customers can actually use them in + * test environments or for limited-use tests -- just like they would in + * normal production cases. + * + * Generated from protobuf enum ALPHA = 2; + */ + const ALPHA = 2; + /** + * Beta is the point at which we are ready to open a release for any + * customer to use. There are no SLA or technical support obligations in a + * Beta release. Products will be complete from a feature perspective, but + * may have some open outstanding issues. Beta releases are suitable for + * limited production use cases. + * + * Generated from protobuf enum BETA = 3; + */ + const BETA = 3; + /** + * GA features are open to all developers and are considered stable and + * fully qualified for production use. + * + * Generated from protobuf enum GA = 4; + */ + const GA = 4; + /** + * Deprecated features are scheduled to be shut down and removed. For more + * information, see the "Deprecation Policy" section of our [Terms of + * Service](https://cloud.google.com/terms/) + * and the [Google Cloud Platform Subject to the Deprecation + * Policy](https://cloud.google.com/terms/deprecation) documentation. + * + * Generated from protobuf enum DEPRECATED = 5; + */ + const DEPRECATED = 5; + private static $valueToName = [self::LAUNCH_STAGE_UNSPECIFIED => 'LAUNCH_STAGE_UNSPECIFIED', self::UNIMPLEMENTED => 'UNIMPLEMENTED', self::PRELAUNCH => 'PRELAUNCH', self::EARLY_ACCESS => 'EARLY_ACCESS', self::ALPHA => 'ALPHA', self::BETA => 'BETA', self::GA => 'GA', self::DEPRECATED => 'DEPRECATED']; + 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/vendor/Gcp/google/common-protos/src/Api/LogDescriptor.php b/vendor/Gcp/google/common-protos/src/Api/LogDescriptor.php new file mode 100644 index 00000000..0e5f3e5c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/LogDescriptor.php @@ -0,0 +1,188 @@ +google.api.LogDescriptor + */ +class LogDescriptor extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The name of the log. It must be less than 512 characters long and can + * include the following characters: upper- and lower-case alphanumeric + * characters [A-Za-z0-9], and punctuation characters including + * slash, underscore, hyphen, period [/_-.]. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The set of labels that are available to describe a specific log entry. + * Runtime requests that contain labels not specified here are + * considered invalid. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + */ + private $labels; + /** + * A human-readable description of this log. This information appears in + * the documentation and can contain details. + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * The human-readable name for this log. This information appears on + * the user interface and should be concise. + * + * Generated from protobuf field string display_name = 4; + */ + protected $display_name = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The name of the log. It must be less than 512 characters long and can + * include the following characters: upper- and lower-case alphanumeric + * characters [A-Za-z0-9], and punctuation characters including + * slash, underscore, hyphen, period [/_-.]. + * @type array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $labels + * The set of labels that are available to describe a specific log entry. + * Runtime requests that contain labels not specified here are + * considered invalid. + * @type string $description + * A human-readable description of this log. This information appears in + * the documentation and can contain details. + * @type string $display_name + * The human-readable name for this log. This information appears on + * the user interface and should be concise. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Log::initOnce(); + parent::__construct($data); + } + /** + * The name of the log. It must be less than 512 characters long and can + * include the following characters: upper- and lower-case alphanumeric + * characters [A-Za-z0-9], and punctuation characters including + * slash, underscore, hyphen, period [/_-.]. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The name of the log. It must be less than 512 characters long and can + * include the following characters: upper- and lower-case alphanumeric + * characters [A-Za-z0-9], and punctuation characters including + * slash, underscore, hyphen, period [/_-.]. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The set of labels that are available to describe a specific log entry. + * Runtime requests that contain labels not specified here are + * considered invalid. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLabels() + { + return $this->labels; + } + /** + * The set of labels that are available to describe a specific log entry. + * Runtime requests that contain labels not specified here are + * considered invalid. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + * @param array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LabelDescriptor::class); + $this->labels = $arr; + return $this; + } + /** + * A human-readable description of this log. This information appears in + * the documentation and can contain details. + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A human-readable description of this log. This information appears in + * the documentation and can contain details. + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * The human-readable name for this log. This information appears on + * the user interface and should be concise. + * + * Generated from protobuf field string display_name = 4; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * The human-readable name for this log. This information appears on + * the user interface and should be concise. + * + * Generated from protobuf field string display_name = 4; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Logging.php b/vendor/Gcp/google/common-protos/src/Api/Logging.php new file mode 100644 index 00000000..37ac9d7d --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Logging.php @@ -0,0 +1,142 @@ +google.api.Logging + */ +class Logging extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Logging configurations for sending logs to the producer project. + * There can be multiple producer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one producer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination producer_destinations = 1; + */ + private $producer_destinations; + /** + * Logging configurations for sending logs to the consumer project. + * There can be multiple consumer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination consumer_destinations = 2; + */ + private $consumer_destinations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\Logging\LoggingDestination>|\Google\Protobuf\Internal\RepeatedField $producer_destinations + * Logging configurations for sending logs to the producer project. + * There can be multiple producer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one producer destination. + * @type array<\Google\Api\Logging\LoggingDestination>|\Google\Protobuf\Internal\RepeatedField $consumer_destinations + * Logging configurations for sending logs to the consumer project. + * There can be multiple consumer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one consumer destination. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Logging::initOnce(); + parent::__construct($data); + } + /** + * Logging configurations for sending logs to the producer project. + * There can be multiple producer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one producer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination producer_destinations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getProducerDestinations() + { + return $this->producer_destinations; + } + /** + * Logging configurations for sending logs to the producer project. + * There can be multiple producer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one producer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination producer_destinations = 1; + * @param array<\Google\Api\Logging\LoggingDestination>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setProducerDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Logging\LoggingDestination::class); + $this->producer_destinations = $arr; + return $this; + } + /** + * Logging configurations for sending logs to the consumer project. + * There can be multiple consumer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination consumer_destinations = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getConsumerDestinations() + { + return $this->consumer_destinations; + } + /** + * Logging configurations for sending logs to the consumer project. + * There can be multiple consumer destinations, each one must have a + * different monitored resource type. A log can be used in at most + * one consumer destination. + * + * Generated from protobuf field repeated .google.api.Logging.LoggingDestination consumer_destinations = 2; + * @param array<\Google\Api\Logging\LoggingDestination>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setConsumerDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Logging\LoggingDestination::class); + $this->consumer_destinations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Logging/LoggingDestination.php b/vendor/Gcp/google/common-protos/src/Api/Logging/LoggingDestination.php new file mode 100644 index 00000000..e4ce1cbe --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Logging/LoggingDestination.php @@ -0,0 +1,113 @@ +google.api.Logging.LoggingDestination + */ +class LoggingDestination extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The monitored resource type. The type must be defined in the + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 3; + */ + protected $monitored_resource = ''; + /** + * Names of the logs to be sent to this destination. Each name must + * be defined in the [Service.logs][google.api.Service.logs] section. If the + * log name is not a domain scoped name, it will be automatically prefixed + * with the service name followed by "/". + * + * Generated from protobuf field repeated string logs = 1; + */ + private $logs; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $monitored_resource + * The monitored resource type. The type must be defined in the + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * @type array|\Google\Protobuf\Internal\RepeatedField $logs + * Names of the logs to be sent to this destination. Each name must + * be defined in the [Service.logs][google.api.Service.logs] section. If the + * log name is not a domain scoped name, it will be automatically prefixed + * with the service name followed by "/". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Logging::initOnce(); + parent::__construct($data); + } + /** + * The monitored resource type. The type must be defined in the + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 3; + * @return string + */ + public function getMonitoredResource() + { + return $this->monitored_resource; + } + /** + * The monitored resource type. The type must be defined in the + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 3; + * @param string $var + * @return $this + */ + public function setMonitoredResource($var) + { + GPBUtil::checkString($var, True); + $this->monitored_resource = $var; + return $this; + } + /** + * Names of the logs to be sent to this destination. Each name must + * be defined in the [Service.logs][google.api.Service.logs] section. If the + * log name is not a domain scoped name, it will be automatically prefixed + * with the service name followed by "/". + * + * Generated from protobuf field repeated string logs = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLogs() + { + return $this->logs; + } + /** + * Names of the logs to be sent to this destination. Each name must + * be defined in the [Service.logs][google.api.Service.logs] section. If the + * log name is not a domain scoped name, it will be automatically prefixed + * with the service name followed by "/". + * + * Generated from protobuf field repeated string logs = 1; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLogs($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->logs = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MethodPolicy.php b/vendor/Gcp/google/common-protos/src/Api/MethodPolicy.php new file mode 100644 index 00000000..f1410d5f --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MethodPolicy.php @@ -0,0 +1,112 @@ +google.api.MethodPolicy + */ +class MethodPolicy extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects a method to which these policies should be enforced, for example, + * "google.pubsub.v1.Subscriber.CreateSubscription". + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * NOTE: This field must not be set in the proto annotation. It will be + * automatically filled by the service config compiler . + * + * Generated from protobuf field string selector = 9; + */ + protected $selector = ''; + /** + * Policies that are applicable to the request message. + * + * Generated from protobuf field repeated .google.api.FieldPolicy request_policies = 2; + */ + private $request_policies; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects a method to which these policies should be enforced, for example, + * "google.pubsub.v1.Subscriber.CreateSubscription". + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * NOTE: This field must not be set in the proto annotation. It will be + * automatically filled by the service config compiler . + * @type array<\Google\Api\FieldPolicy>|\Google\Protobuf\Internal\RepeatedField $request_policies + * Policies that are applicable to the request message. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Policy::initOnce(); + parent::__construct($data); + } + /** + * Selects a method to which these policies should be enforced, for example, + * "google.pubsub.v1.Subscriber.CreateSubscription". + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * NOTE: This field must not be set in the proto annotation. It will be + * automatically filled by the service config compiler . + * + * Generated from protobuf field string selector = 9; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects a method to which these policies should be enforced, for example, + * "google.pubsub.v1.Subscriber.CreateSubscription". + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * NOTE: This field must not be set in the proto annotation. It will be + * automatically filled by the service config compiler . + * + * Generated from protobuf field string selector = 9; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Policies that are applicable to the request message. + * + * Generated from protobuf field repeated .google.api.FieldPolicy request_policies = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRequestPolicies() + { + return $this->request_policies; + } + /** + * Policies that are applicable to the request message. + * + * Generated from protobuf field repeated .google.api.FieldPolicy request_policies = 2; + * @param array<\Google\Api\FieldPolicy>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRequestPolicies($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\FieldPolicy::class); + $this->request_policies = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MethodSettings.php b/vendor/Gcp/google/common-protos/src/Api/MethodSettings.php new file mode 100644 index 00000000..4c7babbe --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MethodSettings.php @@ -0,0 +1,223 @@ +google.api.MethodSettings + */ +class MethodSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The fully qualified name of the method, for which the options below apply. + * This is used to find the method to apply the options. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * Describes settings to use for long-running operations when generating + * API methods for RPCs. Complements RPCs that use the annotations in + * google/longrunning/operations.proto. + * Example of a YAML configuration:: + * publishing: + * method_settings: + * - selector: google.cloud.speech.v2.Speech.BatchRecognize + * long_running: + * initial_poll_delay: + * seconds: 60 # 1 minute + * poll_delay_multiplier: 1.5 + * max_poll_delay: + * seconds: 360 # 6 minutes + * total_poll_timeout: + * seconds: 54000 # 90 minutes + * + * Generated from protobuf field .google.api.MethodSettings.LongRunning long_running = 2; + */ + protected $long_running = null; + /** + * List of top-level fields of the request message, that should be + * automatically populated by the client libraries based on their + * (google.api.field_info).format. Currently supported format: UUID4. + * Example of a YAML configuration: + * publishing: + * method_settings: + * - selector: google.example.v1.ExampleService.CreateExample + * auto_populated_fields: + * - request_id + * + * Generated from protobuf field repeated string auto_populated_fields = 3; + */ + private $auto_populated_fields; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * The fully qualified name of the method, for which the options below apply. + * This is used to find the method to apply the options. + * @type \Google\Api\MethodSettings\LongRunning $long_running + * Describes settings to use for long-running operations when generating + * API methods for RPCs. Complements RPCs that use the annotations in + * google/longrunning/operations.proto. + * Example of a YAML configuration:: + * publishing: + * method_settings: + * - selector: google.cloud.speech.v2.Speech.BatchRecognize + * long_running: + * initial_poll_delay: + * seconds: 60 # 1 minute + * poll_delay_multiplier: 1.5 + * max_poll_delay: + * seconds: 360 # 6 minutes + * total_poll_timeout: + * seconds: 54000 # 90 minutes + * @type array|\Google\Protobuf\Internal\RepeatedField $auto_populated_fields + * List of top-level fields of the request message, that should be + * automatically populated by the client libraries based on their + * (google.api.field_info).format. Currently supported format: UUID4. + * Example of a YAML configuration: + * publishing: + * method_settings: + * - selector: google.example.v1.ExampleService.CreateExample + * auto_populated_fields: + * - request_id + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * The fully qualified name of the method, for which the options below apply. + * This is used to find the method to apply the options. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * The fully qualified name of the method, for which the options below apply. + * This is used to find the method to apply the options. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Describes settings to use for long-running operations when generating + * API methods for RPCs. Complements RPCs that use the annotations in + * google/longrunning/operations.proto. + * Example of a YAML configuration:: + * publishing: + * method_settings: + * - selector: google.cloud.speech.v2.Speech.BatchRecognize + * long_running: + * initial_poll_delay: + * seconds: 60 # 1 minute + * poll_delay_multiplier: 1.5 + * max_poll_delay: + * seconds: 360 # 6 minutes + * total_poll_timeout: + * seconds: 54000 # 90 minutes + * + * Generated from protobuf field .google.api.MethodSettings.LongRunning long_running = 2; + * @return \Google\Api\MethodSettings\LongRunning|null + */ + public function getLongRunning() + { + return $this->long_running; + } + public function hasLongRunning() + { + return isset($this->long_running); + } + public function clearLongRunning() + { + unset($this->long_running); + } + /** + * Describes settings to use for long-running operations when generating + * API methods for RPCs. Complements RPCs that use the annotations in + * google/longrunning/operations.proto. + * Example of a YAML configuration:: + * publishing: + * method_settings: + * - selector: google.cloud.speech.v2.Speech.BatchRecognize + * long_running: + * initial_poll_delay: + * seconds: 60 # 1 minute + * poll_delay_multiplier: 1.5 + * max_poll_delay: + * seconds: 360 # 6 minutes + * total_poll_timeout: + * seconds: 54000 # 90 minutes + * + * Generated from protobuf field .google.api.MethodSettings.LongRunning long_running = 2; + * @param \Google\Api\MethodSettings\LongRunning $var + * @return $this + */ + public function setLongRunning($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MethodSettings\LongRunning::class); + $this->long_running = $var; + return $this; + } + /** + * List of top-level fields of the request message, that should be + * automatically populated by the client libraries based on their + * (google.api.field_info).format. Currently supported format: UUID4. + * Example of a YAML configuration: + * publishing: + * method_settings: + * - selector: google.example.v1.ExampleService.CreateExample + * auto_populated_fields: + * - request_id + * + * Generated from protobuf field repeated string auto_populated_fields = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAutoPopulatedFields() + { + return $this->auto_populated_fields; + } + /** + * List of top-level fields of the request message, that should be + * automatically populated by the client libraries based on their + * (google.api.field_info).format. Currently supported format: UUID4. + * Example of a YAML configuration: + * publishing: + * method_settings: + * - selector: google.example.v1.ExampleService.CreateExample + * auto_populated_fields: + * - request_id + * + * Generated from protobuf field repeated string auto_populated_fields = 3; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAutoPopulatedFields($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->auto_populated_fields = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MethodSettings/LongRunning.php b/vendor/Gcp/google/common-protos/src/Api/MethodSettings/LongRunning.php new file mode 100644 index 00000000..abe64a64 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MethodSettings/LongRunning.php @@ -0,0 +1,202 @@ +google.api.MethodSettings.LongRunning + */ +class LongRunning extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Initial delay after which the first poll request will be made. + * Default value: 5 seconds. + * + * Generated from protobuf field .google.protobuf.Duration initial_poll_delay = 1; + */ + protected $initial_poll_delay = null; + /** + * Multiplier to gradually increase delay between subsequent polls until it + * reaches max_poll_delay. + * Default value: 1.5. + * + * Generated from protobuf field float poll_delay_multiplier = 2; + */ + protected $poll_delay_multiplier = 0.0; + /** + * Maximum time between two subsequent poll requests. + * Default value: 45 seconds. + * + * Generated from protobuf field .google.protobuf.Duration max_poll_delay = 3; + */ + protected $max_poll_delay = null; + /** + * Total polling timeout. + * Default value: 5 minutes. + * + * Generated from protobuf field .google.protobuf.Duration total_poll_timeout = 4; + */ + protected $total_poll_timeout = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Protobuf\Duration $initial_poll_delay + * Initial delay after which the first poll request will be made. + * Default value: 5 seconds. + * @type float $poll_delay_multiplier + * Multiplier to gradually increase delay between subsequent polls until it + * reaches max_poll_delay. + * Default value: 1.5. + * @type \Google\Protobuf\Duration $max_poll_delay + * Maximum time between two subsequent poll requests. + * Default value: 45 seconds. + * @type \Google\Protobuf\Duration $total_poll_timeout + * Total polling timeout. + * Default value: 5 minutes. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Initial delay after which the first poll request will be made. + * Default value: 5 seconds. + * + * Generated from protobuf field .google.protobuf.Duration initial_poll_delay = 1; + * @return \Google\Protobuf\Duration|null + */ + public function getInitialPollDelay() + { + return $this->initial_poll_delay; + } + public function hasInitialPollDelay() + { + return isset($this->initial_poll_delay); + } + public function clearInitialPollDelay() + { + unset($this->initial_poll_delay); + } + /** + * Initial delay after which the first poll request will be made. + * Default value: 5 seconds. + * + * Generated from protobuf field .google.protobuf.Duration initial_poll_delay = 1; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setInitialPollDelay($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->initial_poll_delay = $var; + return $this; + } + /** + * Multiplier to gradually increase delay between subsequent polls until it + * reaches max_poll_delay. + * Default value: 1.5. + * + * Generated from protobuf field float poll_delay_multiplier = 2; + * @return float + */ + public function getPollDelayMultiplier() + { + return $this->poll_delay_multiplier; + } + /** + * Multiplier to gradually increase delay between subsequent polls until it + * reaches max_poll_delay. + * Default value: 1.5. + * + * Generated from protobuf field float poll_delay_multiplier = 2; + * @param float $var + * @return $this + */ + public function setPollDelayMultiplier($var) + { + GPBUtil::checkFloat($var); + $this->poll_delay_multiplier = $var; + return $this; + } + /** + * Maximum time between two subsequent poll requests. + * Default value: 45 seconds. + * + * Generated from protobuf field .google.protobuf.Duration max_poll_delay = 3; + * @return \Google\Protobuf\Duration|null + */ + public function getMaxPollDelay() + { + return $this->max_poll_delay; + } + public function hasMaxPollDelay() + { + return isset($this->max_poll_delay); + } + public function clearMaxPollDelay() + { + unset($this->max_poll_delay); + } + /** + * Maximum time between two subsequent poll requests. + * Default value: 45 seconds. + * + * Generated from protobuf field .google.protobuf.Duration max_poll_delay = 3; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setMaxPollDelay($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->max_poll_delay = $var; + return $this; + } + /** + * Total polling timeout. + * Default value: 5 minutes. + * + * Generated from protobuf field .google.protobuf.Duration total_poll_timeout = 4; + * @return \Google\Protobuf\Duration|null + */ + public function getTotalPollTimeout() + { + return $this->total_poll_timeout; + } + public function hasTotalPollTimeout() + { + return isset($this->total_poll_timeout); + } + public function clearTotalPollTimeout() + { + unset($this->total_poll_timeout); + } + /** + * Total polling timeout. + * Default value: 5 minutes. + * + * Generated from protobuf field .google.protobuf.Duration total_poll_timeout = 4; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setTotalPollTimeout($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->total_poll_timeout = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Metric.php b/vendor/Gcp/google/common-protos/src/Api/Metric.php new file mode 100644 index 00000000..188d0c5d --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Metric.php @@ -0,0 +1,105 @@ +google.api.Metric + */ +class Metric extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * An existing metric type, see + * [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example, + * `custom.googleapis.com/invoice/paid/amount`. + * + * Generated from protobuf field string type = 3; + */ + protected $type = ''; + /** + * The set of label values that uniquely identify this metric. All + * labels listed in the `MetricDescriptor` must be assigned values. + * + * Generated from protobuf field map labels = 2; + */ + private $labels; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $type + * An existing metric type, see + * [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example, + * `custom.googleapis.com/invoice/paid/amount`. + * @type array|\Google\Protobuf\Internal\MapField $labels + * The set of label values that uniquely identify this metric. All + * labels listed in the `MetricDescriptor` must be assigned values. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Metric::initOnce(); + parent::__construct($data); + } + /** + * An existing metric type, see + * [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example, + * `custom.googleapis.com/invoice/paid/amount`. + * + * Generated from protobuf field string type = 3; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * An existing metric type, see + * [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example, + * `custom.googleapis.com/invoice/paid/amount`. + * + * Generated from protobuf field string type = 3; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * The set of label values that uniquely identify this metric. All + * labels listed in the `MetricDescriptor` must be assigned values. + * + * Generated from protobuf field map labels = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getLabels() + { + return $this->labels; + } + /** + * The set of label values that uniquely identify this metric. All + * labels listed in the `MetricDescriptor` must be assigned values. + * + * Generated from protobuf field map labels = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->labels = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor.php b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor.php new file mode 100644 index 00000000..3dfb9ef5 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor.php @@ -0,0 +1,793 @@ +google.api.MetricDescriptor + */ +class MetricDescriptor extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The resource name of the metric descriptor. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The metric type, including its DNS name prefix. The type is not + * URL-encoded. All user-defined metric types have the DNS name + * `custom.googleapis.com` or `external.googleapis.com`. Metric types should + * use a natural hierarchical grouping. For example: + * "custom.googleapis.com/invoice/paid/amount" + * "external.googleapis.com/prometheus/up" + * "appengine.googleapis.com/http/server/response_latencies" + * + * Generated from protobuf field string type = 8; + */ + protected $type = ''; + /** + * The set of labels that can be used to describe a specific + * instance of this metric type. For example, the + * `appengine.googleapis.com/http/server/response_latencies` metric + * type has a label for the HTTP response code, `response_code`, so + * you can look at latencies for successful responses or just + * for responses that failed. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + */ + private $labels; + /** + * Whether the metric records instantaneous values, changes to a value, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricKind metric_kind = 3; + */ + protected $metric_kind = 0; + /** + * Whether the measurement is an integer, a floating-point number, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.ValueType value_type = 4; + */ + protected $value_type = 0; + /** + * The units in which the metric value is reported. It is only applicable + * if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` + * defines the representation of the stored metric values. + * Different systems might scale the values to be more easily displayed (so a + * value of `0.02kBy` _might_ be displayed as `20By`, and a value of + * `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is + * `kBy`, then the value of the metric is always in thousands of bytes, no + * matter how it might be displayed. + * If you want a custom metric to record the exact number of CPU-seconds used + * by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is + * `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 + * CPU-seconds, then the value is written as `12005`. + * Alternatively, if you want a custom metric to record data in a more + * granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is + * `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), + * or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). + * The supported units are a subset of [The Unified Code for Units of + * Measure](https://unitsofmeasure.org/ucum.html) standard: + * **Basic units (UNIT)** + * * `bit` bit + * * `By` byte + * * `s` second + * * `min` minute + * * `h` hour + * * `d` day + * * `1` dimensionless + * **Prefixes (PREFIX)** + * * `k` kilo (10^3) + * * `M` mega (10^6) + * * `G` giga (10^9) + * * `T` tera (10^12) + * * `P` peta (10^15) + * * `E` exa (10^18) + * * `Z` zetta (10^21) + * * `Y` yotta (10^24) + * * `m` milli (10^-3) + * * `u` micro (10^-6) + * * `n` nano (10^-9) + * * `p` pico (10^-12) + * * `f` femto (10^-15) + * * `a` atto (10^-18) + * * `z` zepto (10^-21) + * * `y` yocto (10^-24) + * * `Ki` kibi (2^10) + * * `Mi` mebi (2^20) + * * `Gi` gibi (2^30) + * * `Ti` tebi (2^40) + * * `Pi` pebi (2^50) + * **Grammar** + * The grammar also includes these connectors: + * * `/` division or ratio (as an infix operator). For examples, + * `kBy/{email}` or `MiBy/10ms` (although you should almost never + * have `/s` in a metric `unit`; rates should always be computed at + * query time from the underlying cumulative or delta value). + * * `.` multiplication or composition (as an infix operator). For + * examples, `GBy.d` or `k{watt}.h`. + * The grammar for a unit is as follows: + * Expression = Component { "." Component } { "/" Component } ; + * Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + * | Annotation + * | "1" + * ; + * Annotation = "{" NAME "}" ; + * Notes: + * * `Annotation` is just a comment if it follows a `UNIT`. If the annotation + * is used alone, then the unit is equivalent to `1`. For examples, + * `{request}/s == 1/s`, `By{transmitted}/s == By/s`. + * * `NAME` is a sequence of non-blank printable ASCII characters not + * containing `{` or `}`. + * * `1` represents a unitary [dimensionless + * unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such + * as in `1/s`. It is typically used when none of the basic units are + * appropriate. For example, "new users per day" can be represented as + * `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new + * users). Alternatively, "thousands of page views per day" would be + * represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric + * value of `5.3` would mean "5300 page views per day"). + * * `%` represents dimensionless value of 1/100, and annotates values giving + * a percentage (so the metric values are typically in the range of 0..100, + * and a metric value `3` means "3 percent"). + * * `10^2.%` indicates a metric contains a ratio, typically in the range + * 0..1, that will be multiplied by 100 and displayed as a percentage + * (so a metric value `0.03` means "3 percent"). + * + * Generated from protobuf field string unit = 5; + */ + protected $unit = ''; + /** + * A detailed description of the metric, which can be used in documentation. + * + * Generated from protobuf field string description = 6; + */ + protected $description = ''; + /** + * A concise name for the metric, which can be displayed in user interfaces. + * Use sentence case without an ending period, for example "Request count". + * This field is optional but it is recommended to be set for any metrics + * associated with user-visible concepts, such as Quota. + * + * Generated from protobuf field string display_name = 7; + */ + protected $display_name = ''; + /** + * Optional. Metadata which can be used to guide usage of the metric. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricDescriptorMetadata metadata = 10; + */ + protected $metadata = null; + /** + * Optional. The launch stage of the metric definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 12; + */ + protected $launch_stage = 0; + /** + * Read-only. If present, then a [time + * series][google.monitoring.v3.TimeSeries], which is identified partially by + * a metric type and a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that + * is associated with this metric type can only be associated with one of the + * monitored resource types listed here. + * + * Generated from protobuf field repeated string monitored_resource_types = 13; + */ + private $monitored_resource_types; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The resource name of the metric descriptor. + * @type string $type + * The metric type, including its DNS name prefix. The type is not + * URL-encoded. All user-defined metric types have the DNS name + * `custom.googleapis.com` or `external.googleapis.com`. Metric types should + * use a natural hierarchical grouping. For example: + * "custom.googleapis.com/invoice/paid/amount" + * "external.googleapis.com/prometheus/up" + * "appengine.googleapis.com/http/server/response_latencies" + * @type array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $labels + * The set of labels that can be used to describe a specific + * instance of this metric type. For example, the + * `appengine.googleapis.com/http/server/response_latencies` metric + * type has a label for the HTTP response code, `response_code`, so + * you can look at latencies for successful responses or just + * for responses that failed. + * @type int $metric_kind + * Whether the metric records instantaneous values, changes to a value, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * @type int $value_type + * Whether the measurement is an integer, a floating-point number, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * @type string $unit + * The units in which the metric value is reported. It is only applicable + * if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` + * defines the representation of the stored metric values. + * Different systems might scale the values to be more easily displayed (so a + * value of `0.02kBy` _might_ be displayed as `20By`, and a value of + * `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is + * `kBy`, then the value of the metric is always in thousands of bytes, no + * matter how it might be displayed. + * If you want a custom metric to record the exact number of CPU-seconds used + * by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is + * `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 + * CPU-seconds, then the value is written as `12005`. + * Alternatively, if you want a custom metric to record data in a more + * granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is + * `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), + * or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). + * The supported units are a subset of [The Unified Code for Units of + * Measure](https://unitsofmeasure.org/ucum.html) standard: + * **Basic units (UNIT)** + * * `bit` bit + * * `By` byte + * * `s` second + * * `min` minute + * * `h` hour + * * `d` day + * * `1` dimensionless + * **Prefixes (PREFIX)** + * * `k` kilo (10^3) + * * `M` mega (10^6) + * * `G` giga (10^9) + * * `T` tera (10^12) + * * `P` peta (10^15) + * * `E` exa (10^18) + * * `Z` zetta (10^21) + * * `Y` yotta (10^24) + * * `m` milli (10^-3) + * * `u` micro (10^-6) + * * `n` nano (10^-9) + * * `p` pico (10^-12) + * * `f` femto (10^-15) + * * `a` atto (10^-18) + * * `z` zepto (10^-21) + * * `y` yocto (10^-24) + * * `Ki` kibi (2^10) + * * `Mi` mebi (2^20) + * * `Gi` gibi (2^30) + * * `Ti` tebi (2^40) + * * `Pi` pebi (2^50) + * **Grammar** + * The grammar also includes these connectors: + * * `/` division or ratio (as an infix operator). For examples, + * `kBy/{email}` or `MiBy/10ms` (although you should almost never + * have `/s` in a metric `unit`; rates should always be computed at + * query time from the underlying cumulative or delta value). + * * `.` multiplication or composition (as an infix operator). For + * examples, `GBy.d` or `k{watt}.h`. + * The grammar for a unit is as follows: + * Expression = Component { "." Component } { "/" Component } ; + * Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + * | Annotation + * | "1" + * ; + * Annotation = "{" NAME "}" ; + * Notes: + * * `Annotation` is just a comment if it follows a `UNIT`. If the annotation + * is used alone, then the unit is equivalent to `1`. For examples, + * `{request}/s == 1/s`, `By{transmitted}/s == By/s`. + * * `NAME` is a sequence of non-blank printable ASCII characters not + * containing `{` or `}`. + * * `1` represents a unitary [dimensionless + * unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such + * as in `1/s`. It is typically used when none of the basic units are + * appropriate. For example, "new users per day" can be represented as + * `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new + * users). Alternatively, "thousands of page views per day" would be + * represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric + * value of `5.3` would mean "5300 page views per day"). + * * `%` represents dimensionless value of 1/100, and annotates values giving + * a percentage (so the metric values are typically in the range of 0..100, + * and a metric value `3` means "3 percent"). + * * `10^2.%` indicates a metric contains a ratio, typically in the range + * 0..1, that will be multiplied by 100 and displayed as a percentage + * (so a metric value `0.03` means "3 percent"). + * @type string $description + * A detailed description of the metric, which can be used in documentation. + * @type string $display_name + * A concise name for the metric, which can be displayed in user interfaces. + * Use sentence case without an ending period, for example "Request count". + * This field is optional but it is recommended to be set for any metrics + * associated with user-visible concepts, such as Quota. + * @type \Google\Api\MetricDescriptor\MetricDescriptorMetadata $metadata + * Optional. Metadata which can be used to guide usage of the metric. + * @type int $launch_stage + * Optional. The launch stage of the metric definition. + * @type array|\Google\Protobuf\Internal\RepeatedField $monitored_resource_types + * Read-only. If present, then a [time + * series][google.monitoring.v3.TimeSeries], which is identified partially by + * a metric type and a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that + * is associated with this metric type can only be associated with one of the + * monitored resource types listed here. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Metric::initOnce(); + parent::__construct($data); + } + /** + * The resource name of the metric descriptor. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The resource name of the metric descriptor. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The metric type, including its DNS name prefix. The type is not + * URL-encoded. All user-defined metric types have the DNS name + * `custom.googleapis.com` or `external.googleapis.com`. Metric types should + * use a natural hierarchical grouping. For example: + * "custom.googleapis.com/invoice/paid/amount" + * "external.googleapis.com/prometheus/up" + * "appengine.googleapis.com/http/server/response_latencies" + * + * Generated from protobuf field string type = 8; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * The metric type, including its DNS name prefix. The type is not + * URL-encoded. All user-defined metric types have the DNS name + * `custom.googleapis.com` or `external.googleapis.com`. Metric types should + * use a natural hierarchical grouping. For example: + * "custom.googleapis.com/invoice/paid/amount" + * "external.googleapis.com/prometheus/up" + * "appengine.googleapis.com/http/server/response_latencies" + * + * Generated from protobuf field string type = 8; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * The set of labels that can be used to describe a specific + * instance of this metric type. For example, the + * `appengine.googleapis.com/http/server/response_latencies` metric + * type has a label for the HTTP response code, `response_code`, so + * you can look at latencies for successful responses or just + * for responses that failed. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLabels() + { + return $this->labels; + } + /** + * The set of labels that can be used to describe a specific + * instance of this metric type. For example, the + * `appengine.googleapis.com/http/server/response_latencies` metric + * type has a label for the HTTP response code, `response_code`, so + * you can look at latencies for successful responses or just + * for responses that failed. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 2; + * @param array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LabelDescriptor::class); + $this->labels = $arr; + return $this; + } + /** + * Whether the metric records instantaneous values, changes to a value, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricKind metric_kind = 3; + * @return int + */ + public function getMetricKind() + { + return $this->metric_kind; + } + /** + * Whether the metric records instantaneous values, changes to a value, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricKind metric_kind = 3; + * @param int $var + * @return $this + */ + public function setMetricKind($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MetricDescriptor\MetricKind::class); + $this->metric_kind = $var; + return $this; + } + /** + * Whether the measurement is an integer, a floating-point number, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.ValueType value_type = 4; + * @return int + */ + public function getValueType() + { + return $this->value_type; + } + /** + * Whether the measurement is an integer, a floating-point number, etc. + * Some combinations of `metric_kind` and `value_type` might not be supported. + * + * Generated from protobuf field .google.api.MetricDescriptor.ValueType value_type = 4; + * @param int $var + * @return $this + */ + public function setValueType($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MetricDescriptor\ValueType::class); + $this->value_type = $var; + return $this; + } + /** + * The units in which the metric value is reported. It is only applicable + * if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` + * defines the representation of the stored metric values. + * Different systems might scale the values to be more easily displayed (so a + * value of `0.02kBy` _might_ be displayed as `20By`, and a value of + * `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is + * `kBy`, then the value of the metric is always in thousands of bytes, no + * matter how it might be displayed. + * If you want a custom metric to record the exact number of CPU-seconds used + * by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is + * `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 + * CPU-seconds, then the value is written as `12005`. + * Alternatively, if you want a custom metric to record data in a more + * granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is + * `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), + * or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). + * The supported units are a subset of [The Unified Code for Units of + * Measure](https://unitsofmeasure.org/ucum.html) standard: + * **Basic units (UNIT)** + * * `bit` bit + * * `By` byte + * * `s` second + * * `min` minute + * * `h` hour + * * `d` day + * * `1` dimensionless + * **Prefixes (PREFIX)** + * * `k` kilo (10^3) + * * `M` mega (10^6) + * * `G` giga (10^9) + * * `T` tera (10^12) + * * `P` peta (10^15) + * * `E` exa (10^18) + * * `Z` zetta (10^21) + * * `Y` yotta (10^24) + * * `m` milli (10^-3) + * * `u` micro (10^-6) + * * `n` nano (10^-9) + * * `p` pico (10^-12) + * * `f` femto (10^-15) + * * `a` atto (10^-18) + * * `z` zepto (10^-21) + * * `y` yocto (10^-24) + * * `Ki` kibi (2^10) + * * `Mi` mebi (2^20) + * * `Gi` gibi (2^30) + * * `Ti` tebi (2^40) + * * `Pi` pebi (2^50) + * **Grammar** + * The grammar also includes these connectors: + * * `/` division or ratio (as an infix operator). For examples, + * `kBy/{email}` or `MiBy/10ms` (although you should almost never + * have `/s` in a metric `unit`; rates should always be computed at + * query time from the underlying cumulative or delta value). + * * `.` multiplication or composition (as an infix operator). For + * examples, `GBy.d` or `k{watt}.h`. + * The grammar for a unit is as follows: + * Expression = Component { "." Component } { "/" Component } ; + * Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + * | Annotation + * | "1" + * ; + * Annotation = "{" NAME "}" ; + * Notes: + * * `Annotation` is just a comment if it follows a `UNIT`. If the annotation + * is used alone, then the unit is equivalent to `1`. For examples, + * `{request}/s == 1/s`, `By{transmitted}/s == By/s`. + * * `NAME` is a sequence of non-blank printable ASCII characters not + * containing `{` or `}`. + * * `1` represents a unitary [dimensionless + * unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such + * as in `1/s`. It is typically used when none of the basic units are + * appropriate. For example, "new users per day" can be represented as + * `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new + * users). Alternatively, "thousands of page views per day" would be + * represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric + * value of `5.3` would mean "5300 page views per day"). + * * `%` represents dimensionless value of 1/100, and annotates values giving + * a percentage (so the metric values are typically in the range of 0..100, + * and a metric value `3` means "3 percent"). + * * `10^2.%` indicates a metric contains a ratio, typically in the range + * 0..1, that will be multiplied by 100 and displayed as a percentage + * (so a metric value `0.03` means "3 percent"). + * + * Generated from protobuf field string unit = 5; + * @return string + */ + public function getUnit() + { + return $this->unit; + } + /** + * The units in which the metric value is reported. It is only applicable + * if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit` + * defines the representation of the stored metric values. + * Different systems might scale the values to be more easily displayed (so a + * value of `0.02kBy` _might_ be displayed as `20By`, and a value of + * `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is + * `kBy`, then the value of the metric is always in thousands of bytes, no + * matter how it might be displayed. + * If you want a custom metric to record the exact number of CPU-seconds used + * by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is + * `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005 + * CPU-seconds, then the value is written as `12005`. + * Alternatively, if you want a custom metric to record data in a more + * granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is + * `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`), + * or use `Kis{CPU}` and write `11.723` (which is `12005/1024`). + * The supported units are a subset of [The Unified Code for Units of + * Measure](https://unitsofmeasure.org/ucum.html) standard: + * **Basic units (UNIT)** + * * `bit` bit + * * `By` byte + * * `s` second + * * `min` minute + * * `h` hour + * * `d` day + * * `1` dimensionless + * **Prefixes (PREFIX)** + * * `k` kilo (10^3) + * * `M` mega (10^6) + * * `G` giga (10^9) + * * `T` tera (10^12) + * * `P` peta (10^15) + * * `E` exa (10^18) + * * `Z` zetta (10^21) + * * `Y` yotta (10^24) + * * `m` milli (10^-3) + * * `u` micro (10^-6) + * * `n` nano (10^-9) + * * `p` pico (10^-12) + * * `f` femto (10^-15) + * * `a` atto (10^-18) + * * `z` zepto (10^-21) + * * `y` yocto (10^-24) + * * `Ki` kibi (2^10) + * * `Mi` mebi (2^20) + * * `Gi` gibi (2^30) + * * `Ti` tebi (2^40) + * * `Pi` pebi (2^50) + * **Grammar** + * The grammar also includes these connectors: + * * `/` division or ratio (as an infix operator). For examples, + * `kBy/{email}` or `MiBy/10ms` (although you should almost never + * have `/s` in a metric `unit`; rates should always be computed at + * query time from the underlying cumulative or delta value). + * * `.` multiplication or composition (as an infix operator). For + * examples, `GBy.d` or `k{watt}.h`. + * The grammar for a unit is as follows: + * Expression = Component { "." Component } { "/" Component } ; + * Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] + * | Annotation + * | "1" + * ; + * Annotation = "{" NAME "}" ; + * Notes: + * * `Annotation` is just a comment if it follows a `UNIT`. If the annotation + * is used alone, then the unit is equivalent to `1`. For examples, + * `{request}/s == 1/s`, `By{transmitted}/s == By/s`. + * * `NAME` is a sequence of non-blank printable ASCII characters not + * containing `{` or `}`. + * * `1` represents a unitary [dimensionless + * unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such + * as in `1/s`. It is typically used when none of the basic units are + * appropriate. For example, "new users per day" can be represented as + * `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new + * users). Alternatively, "thousands of page views per day" would be + * represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric + * value of `5.3` would mean "5300 page views per day"). + * * `%` represents dimensionless value of 1/100, and annotates values giving + * a percentage (so the metric values are typically in the range of 0..100, + * and a metric value `3` means "3 percent"). + * * `10^2.%` indicates a metric contains a ratio, typically in the range + * 0..1, that will be multiplied by 100 and displayed as a percentage + * (so a metric value `0.03` means "3 percent"). + * + * Generated from protobuf field string unit = 5; + * @param string $var + * @return $this + */ + public function setUnit($var) + { + GPBUtil::checkString($var, True); + $this->unit = $var; + return $this; + } + /** + * A detailed description of the metric, which can be used in documentation. + * + * Generated from protobuf field string description = 6; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A detailed description of the metric, which can be used in documentation. + * + * Generated from protobuf field string description = 6; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * A concise name for the metric, which can be displayed in user interfaces. + * Use sentence case without an ending period, for example "Request count". + * This field is optional but it is recommended to be set for any metrics + * associated with user-visible concepts, such as Quota. + * + * Generated from protobuf field string display_name = 7; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * A concise name for the metric, which can be displayed in user interfaces. + * Use sentence case without an ending period, for example "Request count". + * This field is optional but it is recommended to be set for any metrics + * associated with user-visible concepts, such as Quota. + * + * Generated from protobuf field string display_name = 7; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } + /** + * Optional. Metadata which can be used to guide usage of the metric. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricDescriptorMetadata metadata = 10; + * @return \Google\Api\MetricDescriptor\MetricDescriptorMetadata|null + */ + public function getMetadata() + { + return $this->metadata; + } + public function hasMetadata() + { + return isset($this->metadata); + } + public function clearMetadata() + { + unset($this->metadata); + } + /** + * Optional. Metadata which can be used to guide usage of the metric. + * + * Generated from protobuf field .google.api.MetricDescriptor.MetricDescriptorMetadata metadata = 10; + * @param \Google\Api\MetricDescriptor\MetricDescriptorMetadata $var + * @return $this + */ + public function setMetadata($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MetricDescriptor\MetricDescriptorMetadata::class); + $this->metadata = $var; + return $this; + } + /** + * Optional. The launch stage of the metric definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 12; + * @return int + */ + public function getLaunchStage() + { + return $this->launch_stage; + } + /** + * Optional. The launch stage of the metric definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 12; + * @param int $var + * @return $this + */ + public function setLaunchStage($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LaunchStage::class); + $this->launch_stage = $var; + return $this; + } + /** + * Read-only. If present, then a [time + * series][google.monitoring.v3.TimeSeries], which is identified partially by + * a metric type and a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that + * is associated with this metric type can only be associated with one of the + * monitored resource types listed here. + * + * Generated from protobuf field repeated string monitored_resource_types = 13; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMonitoredResourceTypes() + { + return $this->monitored_resource_types; + } + /** + * Read-only. If present, then a [time + * series][google.monitoring.v3.TimeSeries], which is identified partially by + * a metric type and a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that + * is associated with this metric type can only be associated with one of the + * monitored resource types listed here. + * + * Generated from protobuf field repeated string monitored_resource_types = 13; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMonitoredResourceTypes($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->monitored_resource_types = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php new file mode 100644 index 00000000..70760084 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricDescriptorMetadata.php @@ -0,0 +1,172 @@ +google.api.MetricDescriptor.MetricDescriptorMetadata + */ +class MetricDescriptorMetadata extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Deprecated. Must use the + * [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage] + * instead. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 1 [deprecated = true]; + * @deprecated + */ + protected $launch_stage = 0; + /** + * The sampling period of metric data points. For metrics which are written + * periodically, consecutive data points are stored at this time interval, + * excluding data loss due to errors. Metrics with a higher granularity have + * a smaller sampling period. + * + * Generated from protobuf field .google.protobuf.Duration sample_period = 2; + */ + protected $sample_period = null; + /** + * The delay of data points caused by ingestion. Data points older than this + * age are guaranteed to be ingested and available to be read, excluding + * data loss due to errors. + * + * Generated from protobuf field .google.protobuf.Duration ingest_delay = 3; + */ + protected $ingest_delay = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $launch_stage + * Deprecated. Must use the + * [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage] + * instead. + * @type \Google\Protobuf\Duration $sample_period + * The sampling period of metric data points. For metrics which are written + * periodically, consecutive data points are stored at this time interval, + * excluding data loss due to errors. Metrics with a higher granularity have + * a smaller sampling period. + * @type \Google\Protobuf\Duration $ingest_delay + * The delay of data points caused by ingestion. Data points older than this + * age are guaranteed to be ingested and available to be read, excluding + * data loss due to errors. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Metric::initOnce(); + parent::__construct($data); + } + /** + * Deprecated. Must use the + * [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage] + * instead. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 1 [deprecated = true]; + * @return int + * @deprecated + */ + public function getLaunchStage() + { + @\trigger_error('launch_stage is deprecated.', \E_USER_DEPRECATED); + return $this->launch_stage; + } + /** + * Deprecated. Must use the + * [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage] + * instead. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 1 [deprecated = true]; + * @param int $var + * @return $this + * @deprecated + */ + public function setLaunchStage($var) + { + @\trigger_error('launch_stage is deprecated.', \E_USER_DEPRECATED); + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LaunchStage::class); + $this->launch_stage = $var; + return $this; + } + /** + * The sampling period of metric data points. For metrics which are written + * periodically, consecutive data points are stored at this time interval, + * excluding data loss due to errors. Metrics with a higher granularity have + * a smaller sampling period. + * + * Generated from protobuf field .google.protobuf.Duration sample_period = 2; + * @return \Google\Protobuf\Duration|null + */ + public function getSamplePeriod() + { + return $this->sample_period; + } + public function hasSamplePeriod() + { + return isset($this->sample_period); + } + public function clearSamplePeriod() + { + unset($this->sample_period); + } + /** + * The sampling period of metric data points. For metrics which are written + * periodically, consecutive data points are stored at this time interval, + * excluding data loss due to errors. Metrics with a higher granularity have + * a smaller sampling period. + * + * Generated from protobuf field .google.protobuf.Duration sample_period = 2; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setSamplePeriod($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->sample_period = $var; + return $this; + } + /** + * The delay of data points caused by ingestion. Data points older than this + * age are guaranteed to be ingested and available to be read, excluding + * data loss due to errors. + * + * Generated from protobuf field .google.protobuf.Duration ingest_delay = 3; + * @return \Google\Protobuf\Duration|null + */ + public function getIngestDelay() + { + return $this->ingest_delay; + } + public function hasIngestDelay() + { + return isset($this->ingest_delay); + } + public function clearIngestDelay() + { + unset($this->ingest_delay); + } + /** + * The delay of data points caused by ingestion. Data points older than this + * age are guaranteed to be ingested and available to be read, excluding + * data loss due to errors. + * + * Generated from protobuf field .google.protobuf.Duration ingest_delay = 3; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setIngestDelay($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->ingest_delay = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricKind.php b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricKind.php new file mode 100644 index 00000000..dc307aaa --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/MetricKind.php @@ -0,0 +1,61 @@ +google.api.MetricDescriptor.MetricKind + */ +class MetricKind +{ + /** + * Do not use this default value. + * + * Generated from protobuf enum METRIC_KIND_UNSPECIFIED = 0; + */ + const METRIC_KIND_UNSPECIFIED = 0; + /** + * An instantaneous measurement of a value. + * + * Generated from protobuf enum GAUGE = 1; + */ + const GAUGE = 1; + /** + * The change in a value during a time interval. + * + * Generated from protobuf enum DELTA = 2; + */ + const DELTA = 2; + /** + * A value accumulated over a time interval. Cumulative + * measurements in a time series should have the same start time + * and increasing end times, until an event resets the cumulative + * value to zero and sets a new start time for the following + * points. + * + * Generated from protobuf enum CUMULATIVE = 3; + */ + const CUMULATIVE = 3; + private static $valueToName = [self::METRIC_KIND_UNSPECIFIED => 'METRIC_KIND_UNSPECIFIED', self::GAUGE => 'GAUGE', self::DELTA => 'DELTA', self::CUMULATIVE => 'CUMULATIVE']; + 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/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/ValueType.php b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/ValueType.php new file mode 100644 index 00000000..a208cf88 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MetricDescriptor/ValueType.php @@ -0,0 +1,75 @@ +google.api.MetricDescriptor.ValueType + */ +class ValueType +{ + /** + * Do not use this default value. + * + * Generated from protobuf enum VALUE_TYPE_UNSPECIFIED = 0; + */ + const VALUE_TYPE_UNSPECIFIED = 0; + /** + * The value is a boolean. + * This value type can be used only if the metric kind is `GAUGE`. + * + * Generated from protobuf enum BOOL = 1; + */ + const BOOL = 1; + /** + * The value is a signed 64-bit integer. + * + * Generated from protobuf enum INT64 = 2; + */ + const INT64 = 2; + /** + * The value is a double precision floating point number. + * + * Generated from protobuf enum DOUBLE = 3; + */ + const DOUBLE = 3; + /** + * The value is a text string. + * This value type can be used only if the metric kind is `GAUGE`. + * + * Generated from protobuf enum STRING = 4; + */ + const STRING = 4; + /** + * The value is a [`Distribution`][google.api.Distribution]. + * + * Generated from protobuf enum DISTRIBUTION = 5; + */ + const DISTRIBUTION = 5; + /** + * The value is money. + * + * Generated from protobuf enum MONEY = 6; + */ + const MONEY = 6; + private static $valueToName = [self::VALUE_TYPE_UNSPECIFIED => 'VALUE_TYPE_UNSPECIFIED', self::BOOL => 'BOOL', self::INT64 => 'INT64', self::DOUBLE => 'DOUBLE', self::STRING => 'STRING', self::DISTRIBUTION => 'DISTRIBUTION', self::MONEY => 'MONEY']; + 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/vendor/Gcp/google/common-protos/src/Api/MetricRule.php b/vendor/Gcp/google/common-protos/src/Api/MetricRule.php new file mode 100644 index 00000000..400b8ce2 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MetricRule.php @@ -0,0 +1,117 @@ +google.api.MetricRule + */ +class MetricRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * Metrics to update when the selected methods are called, and the associated + * cost applied to each metric. + * The key of the map is the metric name, and the values are the amount + * increased for the metric against which the quota limits are defined. + * The value must not be negative. + * + * Generated from protobuf field map metric_costs = 2; + */ + private $metric_costs; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type array|\Google\Protobuf\Internal\MapField $metric_costs + * Metrics to update when the selected methods are called, and the associated + * cost applied to each metric. + * The key of the map is the metric name, and the values are the amount + * increased for the metric against which the quota limits are defined. + * The value must not be negative. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Quota::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Metrics to update when the selected methods are called, and the associated + * cost applied to each metric. + * The key of the map is the metric name, and the values are the amount + * increased for the metric against which the quota limits are defined. + * The value must not be negative. + * + * Generated from protobuf field map metric_costs = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getMetricCosts() + { + return $this->metric_costs; + } + /** + * Metrics to update when the selected methods are called, and the associated + * cost applied to each metric. + * The key of the map is the metric name, and the values are the amount + * increased for the metric against which the quota limits are defined. + * The value must not be negative. + * + * Generated from protobuf field map metric_costs = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setMetricCosts($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::INT64); + $this->metric_costs = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MonitoredResource.php b/vendor/Gcp/google/common-protos/src/Api/MonitoredResource.php new file mode 100644 index 00000000..90218986 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MonitoredResource.php @@ -0,0 +1,138 @@ +google.api.MonitoredResource + */ +class MonitoredResource extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Required. The monitored resource type. This field must match + * the `type` field of a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] + * object. For example, the type of a Compute Engine VM instance is + * `gce_instance`. Some descriptors include the service name in the type; for + * example, the type of a Datastream stream is + * `datastream.googleapis.com/Stream`. + * + * Generated from protobuf field string type = 1; + */ + protected $type = ''; + /** + * Required. Values for all of the labels listed in the associated monitored + * resource descriptor. For example, Compute Engine VM instances use the + * labels `"project_id"`, `"instance_id"`, and `"zone"`. + * + * Generated from protobuf field map labels = 2; + */ + private $labels; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $type + * Required. The monitored resource type. This field must match + * the `type` field of a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] + * object. For example, the type of a Compute Engine VM instance is + * `gce_instance`. Some descriptors include the service name in the type; for + * example, the type of a Datastream stream is + * `datastream.googleapis.com/Stream`. + * @type array|\Google\Protobuf\Internal\MapField $labels + * Required. Values for all of the labels listed in the associated monitored + * resource descriptor. For example, Compute Engine VM instances use the + * labels `"project_id"`, `"instance_id"`, and `"zone"`. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\MonitoredResource::initOnce(); + parent::__construct($data); + } + /** + * Required. The monitored resource type. This field must match + * the `type` field of a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] + * object. For example, the type of a Compute Engine VM instance is + * `gce_instance`. Some descriptors include the service name in the type; for + * example, the type of a Datastream stream is + * `datastream.googleapis.com/Stream`. + * + * Generated from protobuf field string type = 1; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * Required. The monitored resource type. This field must match + * the `type` field of a + * [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] + * object. For example, the type of a Compute Engine VM instance is + * `gce_instance`. Some descriptors include the service name in the type; for + * example, the type of a Datastream stream is + * `datastream.googleapis.com/Stream`. + * + * Generated from protobuf field string type = 1; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * Required. Values for all of the labels listed in the associated monitored + * resource descriptor. For example, Compute Engine VM instances use the + * labels `"project_id"`, `"instance_id"`, and `"zone"`. + * + * Generated from protobuf field map labels = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getLabels() + { + return $this->labels; + } + /** + * Required. Values for all of the labels listed in the associated monitored + * resource descriptor. For example, Compute Engine VM instances use the + * labels `"project_id"`, `"instance_id"`, and `"zone"`. + * + * Generated from protobuf field map labels = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->labels = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceDescriptor.php b/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceDescriptor.php new file mode 100644 index 00000000..71bf7439 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceDescriptor.php @@ -0,0 +1,288 @@ +google.api.MonitoredResourceDescriptor + */ +class MonitoredResourceDescriptor extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Optional. The resource name of the monitored resource descriptor: + * `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where + * {type} is the value of the `type` field in this object and + * {project_id} is a project ID that provides API-specific context for + * accessing the type. APIs that do not use project information can use the + * resource name format `"monitoredResourceDescriptors/{type}"`. + * + * Generated from protobuf field string name = 5; + */ + protected $name = ''; + /** + * Required. The monitored resource type. For example, the type + * `"cloudsql_database"` represents databases in Google Cloud SQL. + * For a list of types, see [Monitoring resource + * types](https://cloud.google.com/monitoring/api/resources) + * and [Logging resource + * types](https://cloud.google.com/logging/docs/api/v2/resource-list). + * + * Generated from protobuf field string type = 1; + */ + protected $type = ''; + /** + * Optional. A concise name for the monitored resource type that might be + * displayed in user interfaces. It should be a Title Cased Noun Phrase, + * without any article or other determiners. For example, + * `"Google Cloud SQL Database"`. + * + * Generated from protobuf field string display_name = 2; + */ + protected $display_name = ''; + /** + * Optional. A detailed description of the monitored resource type that might + * be used in documentation. + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * Required. A set of labels used to describe instances of this monitored + * resource type. For example, an individual Google Cloud SQL database is + * identified by values for the labels `"database_id"` and `"zone"`. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 4; + */ + private $labels; + /** + * Optional. The launch stage of the monitored resource definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 7; + */ + protected $launch_stage = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Optional. The resource name of the monitored resource descriptor: + * `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where + * {type} is the value of the `type` field in this object and + * {project_id} is a project ID that provides API-specific context for + * accessing the type. APIs that do not use project information can use the + * resource name format `"monitoredResourceDescriptors/{type}"`. + * @type string $type + * Required. The monitored resource type. For example, the type + * `"cloudsql_database"` represents databases in Google Cloud SQL. + * For a list of types, see [Monitoring resource + * types](https://cloud.google.com/monitoring/api/resources) + * and [Logging resource + * types](https://cloud.google.com/logging/docs/api/v2/resource-list). + * @type string $display_name + * Optional. A concise name for the monitored resource type that might be + * displayed in user interfaces. It should be a Title Cased Noun Phrase, + * without any article or other determiners. For example, + * `"Google Cloud SQL Database"`. + * @type string $description + * Optional. A detailed description of the monitored resource type that might + * be used in documentation. + * @type array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $labels + * Required. A set of labels used to describe instances of this monitored + * resource type. For example, an individual Google Cloud SQL database is + * identified by values for the labels `"database_id"` and `"zone"`. + * @type int $launch_stage + * Optional. The launch stage of the monitored resource definition. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\MonitoredResource::initOnce(); + parent::__construct($data); + } + /** + * Optional. The resource name of the monitored resource descriptor: + * `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where + * {type} is the value of the `type` field in this object and + * {project_id} is a project ID that provides API-specific context for + * accessing the type. APIs that do not use project information can use the + * resource name format `"monitoredResourceDescriptors/{type}"`. + * + * Generated from protobuf field string name = 5; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * Optional. The resource name of the monitored resource descriptor: + * `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where + * {type} is the value of the `type` field in this object and + * {project_id} is a project ID that provides API-specific context for + * accessing the type. APIs that do not use project information can use the + * resource name format `"monitoredResourceDescriptors/{type}"`. + * + * Generated from protobuf field string name = 5; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * Required. The monitored resource type. For example, the type + * `"cloudsql_database"` represents databases in Google Cloud SQL. + * For a list of types, see [Monitoring resource + * types](https://cloud.google.com/monitoring/api/resources) + * and [Logging resource + * types](https://cloud.google.com/logging/docs/api/v2/resource-list). + * + * Generated from protobuf field string type = 1; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * Required. The monitored resource type. For example, the type + * `"cloudsql_database"` represents databases in Google Cloud SQL. + * For a list of types, see [Monitoring resource + * types](https://cloud.google.com/monitoring/api/resources) + * and [Logging resource + * types](https://cloud.google.com/logging/docs/api/v2/resource-list). + * + * Generated from protobuf field string type = 1; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * Optional. A concise name for the monitored resource type that might be + * displayed in user interfaces. It should be a Title Cased Noun Phrase, + * without any article or other determiners. For example, + * `"Google Cloud SQL Database"`. + * + * Generated from protobuf field string display_name = 2; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * Optional. A concise name for the monitored resource type that might be + * displayed in user interfaces. It should be a Title Cased Noun Phrase, + * without any article or other determiners. For example, + * `"Google Cloud SQL Database"`. + * + * Generated from protobuf field string display_name = 2; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } + /** + * Optional. A detailed description of the monitored resource type that might + * be used in documentation. + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Optional. A detailed description of the monitored resource type that might + * be used in documentation. + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * Required. A set of labels used to describe instances of this monitored + * resource type. For example, an individual Google Cloud SQL database is + * identified by values for the labels `"database_id"` and `"zone"`. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLabels() + { + return $this->labels; + } + /** + * Required. A set of labels used to describe instances of this monitored + * resource type. For example, an individual Google Cloud SQL database is + * identified by values for the labels `"database_id"` and `"zone"`. + * + * Generated from protobuf field repeated .google.api.LabelDescriptor labels = 4; + * @param array<\Google\Api\LabelDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LabelDescriptor::class); + $this->labels = $arr; + return $this; + } + /** + * Optional. The launch stage of the monitored resource definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 7; + * @return int + */ + public function getLaunchStage() + { + return $this->launch_stage; + } + /** + * Optional. The launch stage of the monitored resource definition. + * + * Generated from protobuf field .google.api.LaunchStage launch_stage = 7; + * @param int $var + * @return $this + */ + public function setLaunchStage($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LaunchStage::class); + $this->launch_stage = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceMetadata.php b/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceMetadata.php new file mode 100644 index 00000000..2682a8bc --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/MonitoredResourceMetadata.php @@ -0,0 +1,137 @@ +google.api.MonitoredResourceMetadata + */ +class MonitoredResourceMetadata extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Output only. Values for predefined system metadata labels. + * System labels are a kind of metadata extracted by Google, including + * "machine_image", "vpc", "subnet_id", + * "security_group", "name", etc. + * System label values can be only strings, Boolean values, or a list of + * strings. For example: + * { "name": "my-test-instance", + * "security_group": ["a", "b", "c"], + * "spot_instance": false } + * + * Generated from protobuf field .google.protobuf.Struct system_labels = 1; + */ + protected $system_labels = null; + /** + * Output only. A map of user-defined metadata labels. + * + * Generated from protobuf field map user_labels = 2; + */ + private $user_labels; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Protobuf\Struct $system_labels + * Output only. Values for predefined system metadata labels. + * System labels are a kind of metadata extracted by Google, including + * "machine_image", "vpc", "subnet_id", + * "security_group", "name", etc. + * System label values can be only strings, Boolean values, or a list of + * strings. For example: + * { "name": "my-test-instance", + * "security_group": ["a", "b", "c"], + * "spot_instance": false } + * @type array|\Google\Protobuf\Internal\MapField $user_labels + * Output only. A map of user-defined metadata labels. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\MonitoredResource::initOnce(); + parent::__construct($data); + } + /** + * Output only. Values for predefined system metadata labels. + * System labels are a kind of metadata extracted by Google, including + * "machine_image", "vpc", "subnet_id", + * "security_group", "name", etc. + * System label values can be only strings, Boolean values, or a list of + * strings. For example: + * { "name": "my-test-instance", + * "security_group": ["a", "b", "c"], + * "spot_instance": false } + * + * Generated from protobuf field .google.protobuf.Struct system_labels = 1; + * @return \Google\Protobuf\Struct|null + */ + public function getSystemLabels() + { + return $this->system_labels; + } + public function hasSystemLabels() + { + return isset($this->system_labels); + } + public function clearSystemLabels() + { + unset($this->system_labels); + } + /** + * Output only. Values for predefined system metadata labels. + * System labels are a kind of metadata extracted by Google, including + * "machine_image", "vpc", "subnet_id", + * "security_group", "name", etc. + * System label values can be only strings, Boolean values, or a list of + * strings. For example: + * { "name": "my-test-instance", + * "security_group": ["a", "b", "c"], + * "spot_instance": false } + * + * Generated from protobuf field .google.protobuf.Struct system_labels = 1; + * @param \Google\Protobuf\Struct $var + * @return $this + */ + public function setSystemLabels($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Struct::class); + $this->system_labels = $var; + return $this; + } + /** + * Output only. A map of user-defined metadata labels. + * + * Generated from protobuf field map user_labels = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getUserLabels() + { + return $this->user_labels; + } + /** + * Output only. A map of user-defined metadata labels. + * + * Generated from protobuf field map user_labels = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setUserLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->user_labels = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Monitoring.php b/vendor/Gcp/google/common-protos/src/Api/Monitoring.php new file mode 100644 index 00000000..b0e9df8b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Monitoring.php @@ -0,0 +1,181 @@ +google.api.Monitoring + */ +class Monitoring extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Monitoring configurations for sending metrics to the producer project. + * There can be multiple producer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination producer_destinations = 1; + */ + private $producer_destinations; + /** + * Monitoring configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination consumer_destinations = 2; + */ + private $consumer_destinations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\Monitoring\MonitoringDestination>|\Google\Protobuf\Internal\RepeatedField $producer_destinations + * Monitoring configurations for sending metrics to the producer project. + * There can be multiple producer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * @type array<\Google\Api\Monitoring\MonitoringDestination>|\Google\Protobuf\Internal\RepeatedField $consumer_destinations + * Monitoring configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Monitoring::initOnce(); + parent::__construct($data); + } + /** + * Monitoring configurations for sending metrics to the producer project. + * There can be multiple producer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination producer_destinations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getProducerDestinations() + { + return $this->producer_destinations; + } + /** + * Monitoring configurations for sending metrics to the producer project. + * There can be multiple producer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination producer_destinations = 1; + * @param array<\Google\Api\Monitoring\MonitoringDestination>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setProducerDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Monitoring\MonitoringDestination::class); + $this->producer_destinations = $arr; + return $this; + } + /** + * Monitoring configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination consumer_destinations = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getConsumerDestinations() + { + return $this->consumer_destinations; + } + /** + * Monitoring configurations for sending metrics to the consumer project. + * There can be multiple consumer destinations. A monitored resource type may + * appear in multiple monitoring destinations if different aggregations are + * needed for different sets of metrics associated with that monitored + * resource type. A monitored resource and metric pair may only be used once + * in the Monitoring configuration. + * + * Generated from protobuf field repeated .google.api.Monitoring.MonitoringDestination consumer_destinations = 2; + * @param array<\Google\Api\Monitoring\MonitoringDestination>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setConsumerDestinations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Monitoring\MonitoringDestination::class); + $this->consumer_destinations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Monitoring/MonitoringDestination.php b/vendor/Gcp/google/common-protos/src/Api/Monitoring/MonitoringDestination.php new file mode 100644 index 00000000..4a2df6a6 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Monitoring/MonitoringDestination.php @@ -0,0 +1,109 @@ +google.api.Monitoring.MonitoringDestination + */ +class MonitoringDestination extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + */ + protected $monitored_resource = ''; + /** + * Types of the metrics to report to this monitoring destination. + * Each type must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + */ + private $metrics; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $monitored_resource + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * @type array|\Google\Protobuf\Internal\RepeatedField $metrics + * Types of the metrics to report to this monitoring destination. + * Each type must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Monitoring::initOnce(); + parent::__construct($data); + } + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + * @return string + */ + public function getMonitoredResource() + { + return $this->monitored_resource; + } + /** + * The monitored resource type. The type must be defined in + * [Service.monitored_resources][google.api.Service.monitored_resources] + * section. + * + * Generated from protobuf field string monitored_resource = 1; + * @param string $var + * @return $this + */ + public function setMonitoredResource($var) + { + GPBUtil::checkString($var, True); + $this->monitored_resource = $var; + return $this; + } + /** + * Types of the metrics to report to this monitoring destination. + * Each type must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMetrics() + { + return $this->metrics; + } + /** + * Types of the metrics to report to this monitoring destination. + * Each type must be defined in + * [Service.metrics][google.api.Service.metrics] section. + * + * Generated from protobuf field repeated string metrics = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMetrics($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->metrics = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/NodeSettings.php b/vendor/Gcp/google/common-protos/src/Api/NodeSettings.php new file mode 100644 index 00000000..f8bebea4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/NodeSettings.php @@ -0,0 +1,69 @@ +google.api.NodeSettings + */ +class NodeSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/OAuthRequirements.php b/vendor/Gcp/google/common-protos/src/Api/OAuthRequirements.php new file mode 100644 index 00000000..bda8a3e8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/OAuthRequirements.php @@ -0,0 +1,90 @@ +google.api.OAuthRequirements + */ +class OAuthRequirements extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The list of publicly documented OAuth scopes that are allowed access. An + * OAuth token containing any of these scopes will be accepted. + * Example: + * canonical_scopes: https://www.googleapis.com/auth/calendar, + * https://www.googleapis.com/auth/calendar.read + * + * Generated from protobuf field string canonical_scopes = 1; + */ + protected $canonical_scopes = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $canonical_scopes + * The list of publicly documented OAuth scopes that are allowed access. An + * OAuth token containing any of these scopes will be accepted. + * Example: + * canonical_scopes: https://www.googleapis.com/auth/calendar, + * https://www.googleapis.com/auth/calendar.read + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Auth::initOnce(); + parent::__construct($data); + } + /** + * The list of publicly documented OAuth scopes that are allowed access. An + * OAuth token containing any of these scopes will be accepted. + * Example: + * canonical_scopes: https://www.googleapis.com/auth/calendar, + * https://www.googleapis.com/auth/calendar.read + * + * Generated from protobuf field string canonical_scopes = 1; + * @return string + */ + public function getCanonicalScopes() + { + return $this->canonical_scopes; + } + /** + * The list of publicly documented OAuth scopes that are allowed access. An + * OAuth token containing any of these scopes will be accepted. + * Example: + * canonical_scopes: https://www.googleapis.com/auth/calendar, + * https://www.googleapis.com/auth/calendar.read + * + * Generated from protobuf field string canonical_scopes = 1; + * @param string $var + * @return $this + */ + public function setCanonicalScopes($var) + { + GPBUtil::checkString($var, True); + $this->canonical_scopes = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Page.php b/vendor/Gcp/google/common-protos/src/Api/Page.php new file mode 100644 index 00000000..4c899429 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Page.php @@ -0,0 +1,188 @@ +google.api.Page + */ +class Page extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The name of the page. It will be used as an identity of the page to + * generate URI of the page, text of the link to this page in navigation, + * etc. The full page name (start from the root page name to this page + * concatenated with `.`) can be used as reference to the page in your + * documentation. For example: + *
pages:
+     * - name: Tutorial
+     *   content: (== include tutorial.md ==)
+     *   subpages:
+     *   - name: Java
+     *     content: (== include tutorial_java.md ==)
+     * 
+ * You can reference `Java` page using Markdown reference link syntax: + * `[Java][Tutorial.Java]`. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The Markdown content of the page. You can use (== include {path} + * ==) to include content from a Markdown file. The content can be + * used to produce the documentation page such as HTML format page. + * + * Generated from protobuf field string content = 2; + */ + protected $content = ''; + /** + * Subpages of this page. The order of subpages specified here will be + * honored in the generated docset. + * + * Generated from protobuf field repeated .google.api.Page subpages = 3; + */ + private $subpages; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The name of the page. It will be used as an identity of the page to + * generate URI of the page, text of the link to this page in navigation, + * etc. The full page name (start from the root page name to this page + * concatenated with `.`) can be used as reference to the page in your + * documentation. For example: + *
pages:
+     *           - name: Tutorial
+     *             content: (== include tutorial.md ==)
+     *             subpages:
+     *             - name: Java
+     *               content: (== include tutorial_java.md ==)
+     *           
+ * You can reference `Java` page using Markdown reference link syntax: + * `[Java][Tutorial.Java]`. + * @type string $content + * The Markdown content of the page. You can use (== include {path} + * ==) to include content from a Markdown file. The content can be + * used to produce the documentation page such as HTML format page. + * @type array<\Google\Api\Page>|\Google\Protobuf\Internal\RepeatedField $subpages + * Subpages of this page. The order of subpages specified here will be + * honored in the generated docset. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Documentation::initOnce(); + parent::__construct($data); + } + /** + * The name of the page. It will be used as an identity of the page to + * generate URI of the page, text of the link to this page in navigation, + * etc. The full page name (start from the root page name to this page + * concatenated with `.`) can be used as reference to the page in your + * documentation. For example: + *
pages:
+     * - name: Tutorial
+     *   content: (== include tutorial.md ==)
+     *   subpages:
+     *   - name: Java
+     *     content: (== include tutorial_java.md ==)
+     * 
+ * You can reference `Java` page using Markdown reference link syntax: + * `[Java][Tutorial.Java]`. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The name of the page. It will be used as an identity of the page to + * generate URI of the page, text of the link to this page in navigation, + * etc. The full page name (start from the root page name to this page + * concatenated with `.`) can be used as reference to the page in your + * documentation. For example: + *
pages:
+     * - name: Tutorial
+     *   content: (== include tutorial.md ==)
+     *   subpages:
+     *   - name: Java
+     *     content: (== include tutorial_java.md ==)
+     * 
+ * You can reference `Java` page using Markdown reference link syntax: + * `[Java][Tutorial.Java]`. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The Markdown content of the page. You can use (== include {path} + * ==) to include content from a Markdown file. The content can be + * used to produce the documentation page such as HTML format page. + * + * Generated from protobuf field string content = 2; + * @return string + */ + public function getContent() + { + return $this->content; + } + /** + * The Markdown content of the page. You can use (== include {path} + * ==) to include content from a Markdown file. The content can be + * used to produce the documentation page such as HTML format page. + * + * Generated from protobuf field string content = 2; + * @param string $var + * @return $this + */ + public function setContent($var) + { + GPBUtil::checkString($var, True); + $this->content = $var; + return $this; + } + /** + * Subpages of this page. The order of subpages specified here will be + * honored in the generated docset. + * + * Generated from protobuf field repeated .google.api.Page subpages = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getSubpages() + { + return $this->subpages; + } + /** + * Subpages of this page. The order of subpages specified here will be + * honored in the generated docset. + * + * Generated from protobuf field repeated .google.api.Page subpages = 3; + * @param array<\Google\Api\Page>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setSubpages($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Page::class); + $this->subpages = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/PhpSettings.php b/vendor/Gcp/google/common-protos/src/Api/PhpSettings.php new file mode 100644 index 00000000..8e9c016f --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/PhpSettings.php @@ -0,0 +1,69 @@ +google.api.PhpSettings + */ +class PhpSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ProjectProperties.php b/vendor/Gcp/google/common-protos/src/Api/ProjectProperties.php new file mode 100644 index 00000000..836b2d62 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ProjectProperties.php @@ -0,0 +1,74 @@ +google.api.ProjectProperties + */ +class ProjectProperties extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * List of per consumer project-specific properties. + * + * Generated from protobuf field repeated .google.api.Property properties = 1; + */ + private $properties; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\Property>|\Google\Protobuf\Internal\RepeatedField $properties + * List of per consumer project-specific properties. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Consumer::initOnce(); + parent::__construct($data); + } + /** + * List of per consumer project-specific properties. + * + * Generated from protobuf field repeated .google.api.Property properties = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getProperties() + { + return $this->properties; + } + /** + * List of per consumer project-specific properties. + * + * Generated from protobuf field repeated .google.api.Property properties = 1; + * @param array<\Google\Api\Property>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setProperties($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Property::class); + $this->properties = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Property.php b/vendor/Gcp/google/common-protos/src/Api/Property.php new file mode 100644 index 00000000..2202b5de --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Property.php @@ -0,0 +1,130 @@ +google.api.Property + */ +class Property extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The name of the property (a.k.a key). + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The type of this property. + * + * Generated from protobuf field .google.api.Property.PropertyType type = 2; + */ + protected $type = 0; + /** + * The description of the property + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The name of the property (a.k.a key). + * @type int $type + * The type of this property. + * @type string $description + * The description of the property + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Consumer::initOnce(); + parent::__construct($data); + } + /** + * The name of the property (a.k.a key). + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The name of the property (a.k.a key). + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The type of this property. + * + * Generated from protobuf field .google.api.Property.PropertyType type = 2; + * @return int + */ + public function getType() + { + return $this->type; + } + /** + * The type of this property. + * + * Generated from protobuf field .google.api.Property.PropertyType type = 2; + * @param int $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Property\PropertyType::class); + $this->type = $var; + return $this; + } + /** + * The description of the property + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * The description of the property + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Property/PropertyType.php b/vendor/Gcp/google/common-protos/src/Api/Property/PropertyType.php new file mode 100644 index 00000000..ba753c84 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Property/PropertyType.php @@ -0,0 +1,61 @@ +google.api.Property.PropertyType + */ +class PropertyType +{ + /** + * The type is unspecified, and will result in an error. + * + * Generated from protobuf enum UNSPECIFIED = 0; + */ + const UNSPECIFIED = 0; + /** + * The type is `int64`. + * + * Generated from protobuf enum INT64 = 1; + */ + const INT64 = 1; + /** + * The type is `bool`. + * + * Generated from protobuf enum BOOL = 2; + */ + const BOOL = 2; + /** + * The type is `string`. + * + * Generated from protobuf enum STRING = 3; + */ + const STRING = 3; + /** + * The type is 'double'. + * + * Generated from protobuf enum DOUBLE = 4; + */ + const DOUBLE = 4; + private static $valueToName = [self::UNSPECIFIED => 'UNSPECIFIED', self::INT64 => 'INT64', self::BOOL => 'BOOL', self::STRING => 'STRING', self::DOUBLE => 'DOUBLE']; + 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/vendor/Gcp/google/common-protos/src/Api/Publishing.php b/vendor/Gcp/google/common-protos/src/Api/Publishing.php new file mode 100644 index 00000000..f1b5d1a9 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Publishing.php @@ -0,0 +1,382 @@ +google.api.Publishing + */ +class Publishing extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of API method settings, e.g. the behavior for methods that use the + * long-running operation pattern. + * + * Generated from protobuf field repeated .google.api.MethodSettings method_settings = 2; + */ + private $method_settings; + /** + * Link to a *public* URI where users can report issues. Example: + * https://issuetracker.google.com/issues/new?component=190865&template=1161103 + * + * Generated from protobuf field string new_issue_uri = 101; + */ + protected $new_issue_uri = ''; + /** + * Link to product home page. Example: + * https://cloud.google.com/asset-inventory/docs/overview + * + * Generated from protobuf field string documentation_uri = 102; + */ + protected $documentation_uri = ''; + /** + * Used as a tracking tag when collecting data about the APIs developer + * relations artifacts like docs, packages delivered to package managers, + * etc. Example: "speech". + * + * Generated from protobuf field string api_short_name = 103; + */ + protected $api_short_name = ''; + /** + * GitHub label to apply to issues and pull requests opened for this API. + * + * Generated from protobuf field string github_label = 104; + */ + protected $github_label = ''; + /** + * GitHub teams to be added to CODEOWNERS in the directory in GitHub + * containing source code for the client libraries for this API. + * + * Generated from protobuf field repeated string codeowner_github_teams = 105; + */ + private $codeowner_github_teams; + /** + * A prefix used in sample code when demarking regions to be included in + * documentation. + * + * Generated from protobuf field string doc_tag_prefix = 106; + */ + protected $doc_tag_prefix = ''; + /** + * For whom the client library is being published. + * + * Generated from protobuf field .google.api.ClientLibraryOrganization organization = 107; + */ + protected $organization = 0; + /** + * Client library settings. If the same version string appears multiple + * times in this list, then the last one wins. Settings from earlier + * settings with the same version string are discarded. + * + * Generated from protobuf field repeated .google.api.ClientLibrarySettings library_settings = 109; + */ + private $library_settings; + /** + * Optional link to proto reference documentation. Example: + * https://cloud.google.com/pubsub/lite/docs/reference/rpc + * + * Generated from protobuf field string proto_reference_documentation_uri = 110; + */ + protected $proto_reference_documentation_uri = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\MethodSettings>|\Google\Protobuf\Internal\RepeatedField $method_settings + * A list of API method settings, e.g. the behavior for methods that use the + * long-running operation pattern. + * @type string $new_issue_uri + * Link to a *public* URI where users can report issues. Example: + * https://issuetracker.google.com/issues/new?component=190865&template=1161103 + * @type string $documentation_uri + * Link to product home page. Example: + * https://cloud.google.com/asset-inventory/docs/overview + * @type string $api_short_name + * Used as a tracking tag when collecting data about the APIs developer + * relations artifacts like docs, packages delivered to package managers, + * etc. Example: "speech". + * @type string $github_label + * GitHub label to apply to issues and pull requests opened for this API. + * @type array|\Google\Protobuf\Internal\RepeatedField $codeowner_github_teams + * GitHub teams to be added to CODEOWNERS in the directory in GitHub + * containing source code for the client libraries for this API. + * @type string $doc_tag_prefix + * A prefix used in sample code when demarking regions to be included in + * documentation. + * @type int $organization + * For whom the client library is being published. + * @type array<\Google\Api\ClientLibrarySettings>|\Google\Protobuf\Internal\RepeatedField $library_settings + * Client library settings. If the same version string appears multiple + * times in this list, then the last one wins. Settings from earlier + * settings with the same version string are discarded. + * @type string $proto_reference_documentation_uri + * Optional link to proto reference documentation. Example: + * https://cloud.google.com/pubsub/lite/docs/reference/rpc + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * A list of API method settings, e.g. the behavior for methods that use the + * long-running operation pattern. + * + * Generated from protobuf field repeated .google.api.MethodSettings method_settings = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMethodSettings() + { + return $this->method_settings; + } + /** + * A list of API method settings, e.g. the behavior for methods that use the + * long-running operation pattern. + * + * Generated from protobuf field repeated .google.api.MethodSettings method_settings = 2; + * @param array<\Google\Api\MethodSettings>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMethodSettings($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MethodSettings::class); + $this->method_settings = $arr; + return $this; + } + /** + * Link to a *public* URI where users can report issues. Example: + * https://issuetracker.google.com/issues/new?component=190865&template=1161103 + * + * Generated from protobuf field string new_issue_uri = 101; + * @return string + */ + public function getNewIssueUri() + { + return $this->new_issue_uri; + } + /** + * Link to a *public* URI where users can report issues. Example: + * https://issuetracker.google.com/issues/new?component=190865&template=1161103 + * + * Generated from protobuf field string new_issue_uri = 101; + * @param string $var + * @return $this + */ + public function setNewIssueUri($var) + { + GPBUtil::checkString($var, True); + $this->new_issue_uri = $var; + return $this; + } + /** + * Link to product home page. Example: + * https://cloud.google.com/asset-inventory/docs/overview + * + * Generated from protobuf field string documentation_uri = 102; + * @return string + */ + public function getDocumentationUri() + { + return $this->documentation_uri; + } + /** + * Link to product home page. Example: + * https://cloud.google.com/asset-inventory/docs/overview + * + * Generated from protobuf field string documentation_uri = 102; + * @param string $var + * @return $this + */ + public function setDocumentationUri($var) + { + GPBUtil::checkString($var, True); + $this->documentation_uri = $var; + return $this; + } + /** + * Used as a tracking tag when collecting data about the APIs developer + * relations artifacts like docs, packages delivered to package managers, + * etc. Example: "speech". + * + * Generated from protobuf field string api_short_name = 103; + * @return string + */ + public function getApiShortName() + { + return $this->api_short_name; + } + /** + * Used as a tracking tag when collecting data about the APIs developer + * relations artifacts like docs, packages delivered to package managers, + * etc. Example: "speech". + * + * Generated from protobuf field string api_short_name = 103; + * @param string $var + * @return $this + */ + public function setApiShortName($var) + { + GPBUtil::checkString($var, True); + $this->api_short_name = $var; + return $this; + } + /** + * GitHub label to apply to issues and pull requests opened for this API. + * + * Generated from protobuf field string github_label = 104; + * @return string + */ + public function getGithubLabel() + { + return $this->github_label; + } + /** + * GitHub label to apply to issues and pull requests opened for this API. + * + * Generated from protobuf field string github_label = 104; + * @param string $var + * @return $this + */ + public function setGithubLabel($var) + { + GPBUtil::checkString($var, True); + $this->github_label = $var; + return $this; + } + /** + * GitHub teams to be added to CODEOWNERS in the directory in GitHub + * containing source code for the client libraries for this API. + * + * Generated from protobuf field repeated string codeowner_github_teams = 105; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getCodeownerGithubTeams() + { + return $this->codeowner_github_teams; + } + /** + * GitHub teams to be added to CODEOWNERS in the directory in GitHub + * containing source code for the client libraries for this API. + * + * Generated from protobuf field repeated string codeowner_github_teams = 105; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setCodeownerGithubTeams($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->codeowner_github_teams = $arr; + return $this; + } + /** + * A prefix used in sample code when demarking regions to be included in + * documentation. + * + * Generated from protobuf field string doc_tag_prefix = 106; + * @return string + */ + public function getDocTagPrefix() + { + return $this->doc_tag_prefix; + } + /** + * A prefix used in sample code when demarking regions to be included in + * documentation. + * + * Generated from protobuf field string doc_tag_prefix = 106; + * @param string $var + * @return $this + */ + public function setDocTagPrefix($var) + { + GPBUtil::checkString($var, True); + $this->doc_tag_prefix = $var; + return $this; + } + /** + * For whom the client library is being published. + * + * Generated from protobuf field .google.api.ClientLibraryOrganization organization = 107; + * @return int + */ + public function getOrganization() + { + return $this->organization; + } + /** + * For whom the client library is being published. + * + * Generated from protobuf field .google.api.ClientLibraryOrganization organization = 107; + * @param int $var + * @return $this + */ + public function setOrganization($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ClientLibraryOrganization::class); + $this->organization = $var; + return $this; + } + /** + * Client library settings. If the same version string appears multiple + * times in this list, then the last one wins. Settings from earlier + * settings with the same version string are discarded. + * + * Generated from protobuf field repeated .google.api.ClientLibrarySettings library_settings = 109; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLibrarySettings() + { + return $this->library_settings; + } + /** + * Client library settings. If the same version string appears multiple + * times in this list, then the last one wins. Settings from earlier + * settings with the same version string are discarded. + * + * Generated from protobuf field repeated .google.api.ClientLibrarySettings library_settings = 109; + * @param array<\Google\Api\ClientLibrarySettings>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLibrarySettings($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ClientLibrarySettings::class); + $this->library_settings = $arr; + return $this; + } + /** + * Optional link to proto reference documentation. Example: + * https://cloud.google.com/pubsub/lite/docs/reference/rpc + * + * Generated from protobuf field string proto_reference_documentation_uri = 110; + * @return string + */ + public function getProtoReferenceDocumentationUri() + { + return $this->proto_reference_documentation_uri; + } + /** + * Optional link to proto reference documentation. Example: + * https://cloud.google.com/pubsub/lite/docs/reference/rpc + * + * Generated from protobuf field string proto_reference_documentation_uri = 110; + * @param string $var + * @return $this + */ + public function setProtoReferenceDocumentationUri($var) + { + GPBUtil::checkString($var, True); + $this->proto_reference_documentation_uri = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/PythonSettings.php b/vendor/Gcp/google/common-protos/src/Api/PythonSettings.php new file mode 100644 index 00000000..3cdff95c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/PythonSettings.php @@ -0,0 +1,69 @@ +google.api.PythonSettings + */ +class PythonSettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Quota.php b/vendor/Gcp/google/common-protos/src/Api/Quota.php new file mode 100644 index 00000000..acfb467b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Quota.php @@ -0,0 +1,135 @@ +google.api.Quota + */ +class Quota extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * List of QuotaLimit definitions for the service. + * + * Generated from protobuf field repeated .google.api.QuotaLimit limits = 3; + */ + private $limits; + /** + * List of MetricRule definitions, each one mapping a selected method to one + * or more metrics. + * + * Generated from protobuf field repeated .google.api.MetricRule metric_rules = 4; + */ + private $metric_rules; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\QuotaLimit>|\Google\Protobuf\Internal\RepeatedField $limits + * List of QuotaLimit definitions for the service. + * @type array<\Google\Api\MetricRule>|\Google\Protobuf\Internal\RepeatedField $metric_rules + * List of MetricRule definitions, each one mapping a selected method to one + * or more metrics. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Quota::initOnce(); + parent::__construct($data); + } + /** + * List of QuotaLimit definitions for the service. + * + * Generated from protobuf field repeated .google.api.QuotaLimit limits = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLimits() + { + return $this->limits; + } + /** + * List of QuotaLimit definitions for the service. + * + * Generated from protobuf field repeated .google.api.QuotaLimit limits = 3; + * @param array<\Google\Api\QuotaLimit>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLimits($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\QuotaLimit::class); + $this->limits = $arr; + return $this; + } + /** + * List of MetricRule definitions, each one mapping a selected method to one + * or more metrics. + * + * Generated from protobuf field repeated .google.api.MetricRule metric_rules = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMetricRules() + { + return $this->metric_rules; + } + /** + * List of MetricRule definitions, each one mapping a selected method to one + * or more metrics. + * + * Generated from protobuf field repeated .google.api.MetricRule metric_rules = 4; + * @param array<\Google\Api\MetricRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMetricRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MetricRule::class); + $this->metric_rules = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/QuotaLimit.php b/vendor/Gcp/google/common-protos/src/Api/QuotaLimit.php new file mode 100644 index 00000000..4f614b75 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/QuotaLimit.php @@ -0,0 +1,494 @@ +google.api.QuotaLimit + */ +class QuotaLimit extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Name of the quota limit. + * The name must be provided, and it must be unique within the service. The + * name can only include alphanumeric characters as well as '-'. + * The maximum length of the limit name is 64 characters. + * + * Generated from protobuf field string name = 6; + */ + protected $name = ''; + /** + * Optional. User-visible, extended description for this quota limit. + * Should be used only when more context is needed to understand this limit + * than provided by the limit's display name (see: `display_name`). + * + * Generated from protobuf field string description = 2; + */ + protected $description = ''; + /** + * Default number of tokens that can be consumed during the specified + * duration. This is the number of tokens assigned when a client + * application developer activates the service for his/her project. + * Specifying a value of 0 will block all requests. This can be used if you + * are provisioning quota to selected consumers and blocking others. + * Similarly, a value of -1 will indicate an unlimited quota. No other + * negative values are allowed. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 default_limit = 3; + */ + protected $default_limit = 0; + /** + * Maximum number of tokens that can be consumed during the specified + * duration. Client application developers can override the default limit up + * to this maximum. If specified, this value cannot be set to a value less + * than the default limit. If not specified, it is set to the default limit. + * To allow clients to apply overrides with no upper bound, set this to -1, + * indicating unlimited maximum quota. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 max_limit = 4; + */ + protected $max_limit = 0; + /** + * Free tier value displayed in the Developers Console for this limit. + * The free tier is the number of tokens that will be subtracted from the + * billed amount when billing is enabled. + * This field can only be set on a limit with duration "1d", in a billable + * group; it is invalid on any other limit. If this field is not set, it + * defaults to 0, indicating that there is no free tier for this service. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 free_tier = 7; + */ + protected $free_tier = 0; + /** + * Duration of this limit in textual notation. Must be "100s" or "1d". + * Used by group-based quotas only. + * + * Generated from protobuf field string duration = 5; + */ + protected $duration = ''; + /** + * The name of the metric this quota limit applies to. The quota limits with + * the same metric will be checked together during runtime. The metric must be + * defined within the service config. + * + * Generated from protobuf field string metric = 8; + */ + protected $metric = ''; + /** + * Specify the unit of the quota limit. It uses the same syntax as + * [Metric.unit][]. The supported unit kinds are determined by the quota + * backend system. + * Here are some examples: + * * "1/min/{project}" for quota per minute per project. + * Note: the order of unit components is insignificant. + * The "1" at the beginning is required to follow the metric unit syntax. + * + * Generated from protobuf field string unit = 9; + */ + protected $unit = ''; + /** + * Tiered limit values. You must specify this as a key:value pair, with an + * integer value that is the maximum number of requests allowed for the + * specified unit. Currently only STANDARD is supported. + * + * Generated from protobuf field map values = 10; + */ + private $values; + /** + * User-visible display name for this limit. + * Optional. If not set, the UI will provide a default display name based on + * the quota configuration. This field can be used to override the default + * display name generated from the configuration. + * + * Generated from protobuf field string display_name = 12; + */ + protected $display_name = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Name of the quota limit. + * The name must be provided, and it must be unique within the service. The + * name can only include alphanumeric characters as well as '-'. + * The maximum length of the limit name is 64 characters. + * @type string $description + * Optional. User-visible, extended description for this quota limit. + * Should be used only when more context is needed to understand this limit + * than provided by the limit's display name (see: `display_name`). + * @type int|string $default_limit + * Default number of tokens that can be consumed during the specified + * duration. This is the number of tokens assigned when a client + * application developer activates the service for his/her project. + * Specifying a value of 0 will block all requests. This can be used if you + * are provisioning quota to selected consumers and blocking others. + * Similarly, a value of -1 will indicate an unlimited quota. No other + * negative values are allowed. + * Used by group-based quotas only. + * @type int|string $max_limit + * Maximum number of tokens that can be consumed during the specified + * duration. Client application developers can override the default limit up + * to this maximum. If specified, this value cannot be set to a value less + * than the default limit. If not specified, it is set to the default limit. + * To allow clients to apply overrides with no upper bound, set this to -1, + * indicating unlimited maximum quota. + * Used by group-based quotas only. + * @type int|string $free_tier + * Free tier value displayed in the Developers Console for this limit. + * The free tier is the number of tokens that will be subtracted from the + * billed amount when billing is enabled. + * This field can only be set on a limit with duration "1d", in a billable + * group; it is invalid on any other limit. If this field is not set, it + * defaults to 0, indicating that there is no free tier for this service. + * Used by group-based quotas only. + * @type string $duration + * Duration of this limit in textual notation. Must be "100s" or "1d". + * Used by group-based quotas only. + * @type string $metric + * The name of the metric this quota limit applies to. The quota limits with + * the same metric will be checked together during runtime. The metric must be + * defined within the service config. + * @type string $unit + * Specify the unit of the quota limit. It uses the same syntax as + * [Metric.unit][]. The supported unit kinds are determined by the quota + * backend system. + * Here are some examples: + * * "1/min/{project}" for quota per minute per project. + * Note: the order of unit components is insignificant. + * The "1" at the beginning is required to follow the metric unit syntax. + * @type array|\Google\Protobuf\Internal\MapField $values + * Tiered limit values. You must specify this as a key:value pair, with an + * integer value that is the maximum number of requests allowed for the + * specified unit. Currently only STANDARD is supported. + * @type string $display_name + * User-visible display name for this limit. + * Optional. If not set, the UI will provide a default display name based on + * the quota configuration. This field can be used to override the default + * display name generated from the configuration. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Quota::initOnce(); + parent::__construct($data); + } + /** + * Name of the quota limit. + * The name must be provided, and it must be unique within the service. The + * name can only include alphanumeric characters as well as '-'. + * The maximum length of the limit name is 64 characters. + * + * Generated from protobuf field string name = 6; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * Name of the quota limit. + * The name must be provided, and it must be unique within the service. The + * name can only include alphanumeric characters as well as '-'. + * The maximum length of the limit name is 64 characters. + * + * Generated from protobuf field string name = 6; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * Optional. User-visible, extended description for this quota limit. + * Should be used only when more context is needed to understand this limit + * than provided by the limit's display name (see: `display_name`). + * + * Generated from protobuf field string description = 2; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Optional. User-visible, extended description for this quota limit. + * Should be used only when more context is needed to understand this limit + * than provided by the limit's display name (see: `display_name`). + * + * Generated from protobuf field string description = 2; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * Default number of tokens that can be consumed during the specified + * duration. This is the number of tokens assigned when a client + * application developer activates the service for his/her project. + * Specifying a value of 0 will block all requests. This can be used if you + * are provisioning quota to selected consumers and blocking others. + * Similarly, a value of -1 will indicate an unlimited quota. No other + * negative values are allowed. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 default_limit = 3; + * @return int|string + */ + public function getDefaultLimit() + { + return $this->default_limit; + } + /** + * Default number of tokens that can be consumed during the specified + * duration. This is the number of tokens assigned when a client + * application developer activates the service for his/her project. + * Specifying a value of 0 will block all requests. This can be used if you + * are provisioning quota to selected consumers and blocking others. + * Similarly, a value of -1 will indicate an unlimited quota. No other + * negative values are allowed. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 default_limit = 3; + * @param int|string $var + * @return $this + */ + public function setDefaultLimit($var) + { + GPBUtil::checkInt64($var); + $this->default_limit = $var; + return $this; + } + /** + * Maximum number of tokens that can be consumed during the specified + * duration. Client application developers can override the default limit up + * to this maximum. If specified, this value cannot be set to a value less + * than the default limit. If not specified, it is set to the default limit. + * To allow clients to apply overrides with no upper bound, set this to -1, + * indicating unlimited maximum quota. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 max_limit = 4; + * @return int|string + */ + public function getMaxLimit() + { + return $this->max_limit; + } + /** + * Maximum number of tokens that can be consumed during the specified + * duration. Client application developers can override the default limit up + * to this maximum. If specified, this value cannot be set to a value less + * than the default limit. If not specified, it is set to the default limit. + * To allow clients to apply overrides with no upper bound, set this to -1, + * indicating unlimited maximum quota. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 max_limit = 4; + * @param int|string $var + * @return $this + */ + public function setMaxLimit($var) + { + GPBUtil::checkInt64($var); + $this->max_limit = $var; + return $this; + } + /** + * Free tier value displayed in the Developers Console for this limit. + * The free tier is the number of tokens that will be subtracted from the + * billed amount when billing is enabled. + * This field can only be set on a limit with duration "1d", in a billable + * group; it is invalid on any other limit. If this field is not set, it + * defaults to 0, indicating that there is no free tier for this service. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 free_tier = 7; + * @return int|string + */ + public function getFreeTier() + { + return $this->free_tier; + } + /** + * Free tier value displayed in the Developers Console for this limit. + * The free tier is the number of tokens that will be subtracted from the + * billed amount when billing is enabled. + * This field can only be set on a limit with duration "1d", in a billable + * group; it is invalid on any other limit. If this field is not set, it + * defaults to 0, indicating that there is no free tier for this service. + * Used by group-based quotas only. + * + * Generated from protobuf field int64 free_tier = 7; + * @param int|string $var + * @return $this + */ + public function setFreeTier($var) + { + GPBUtil::checkInt64($var); + $this->free_tier = $var; + return $this; + } + /** + * Duration of this limit in textual notation. Must be "100s" or "1d". + * Used by group-based quotas only. + * + * Generated from protobuf field string duration = 5; + * @return string + */ + public function getDuration() + { + return $this->duration; + } + /** + * Duration of this limit in textual notation. Must be "100s" or "1d". + * Used by group-based quotas only. + * + * Generated from protobuf field string duration = 5; + * @param string $var + * @return $this + */ + public function setDuration($var) + { + GPBUtil::checkString($var, True); + $this->duration = $var; + return $this; + } + /** + * The name of the metric this quota limit applies to. The quota limits with + * the same metric will be checked together during runtime. The metric must be + * defined within the service config. + * + * Generated from protobuf field string metric = 8; + * @return string + */ + public function getMetric() + { + return $this->metric; + } + /** + * The name of the metric this quota limit applies to. The quota limits with + * the same metric will be checked together during runtime. The metric must be + * defined within the service config. + * + * Generated from protobuf field string metric = 8; + * @param string $var + * @return $this + */ + public function setMetric($var) + { + GPBUtil::checkString($var, True); + $this->metric = $var; + return $this; + } + /** + * Specify the unit of the quota limit. It uses the same syntax as + * [Metric.unit][]. The supported unit kinds are determined by the quota + * backend system. + * Here are some examples: + * * "1/min/{project}" for quota per minute per project. + * Note: the order of unit components is insignificant. + * The "1" at the beginning is required to follow the metric unit syntax. + * + * Generated from protobuf field string unit = 9; + * @return string + */ + public function getUnit() + { + return $this->unit; + } + /** + * Specify the unit of the quota limit. It uses the same syntax as + * [Metric.unit][]. The supported unit kinds are determined by the quota + * backend system. + * Here are some examples: + * * "1/min/{project}" for quota per minute per project. + * Note: the order of unit components is insignificant. + * The "1" at the beginning is required to follow the metric unit syntax. + * + * Generated from protobuf field string unit = 9; + * @param string $var + * @return $this + */ + public function setUnit($var) + { + GPBUtil::checkString($var, True); + $this->unit = $var; + return $this; + } + /** + * Tiered limit values. You must specify this as a key:value pair, with an + * integer value that is the maximum number of requests allowed for the + * specified unit. Currently only STANDARD is supported. + * + * Generated from protobuf field map values = 10; + * @return \Google\Protobuf\Internal\MapField + */ + public function getValues() + { + return $this->values; + } + /** + * Tiered limit values. You must specify this as a key:value pair, with an + * integer value that is the maximum number of requests allowed for the + * specified unit. Currently only STANDARD is supported. + * + * Generated from protobuf field map values = 10; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setValues($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::INT64); + $this->values = $arr; + return $this; + } + /** + * User-visible display name for this limit. + * Optional. If not set, the UI will provide a default display name based on + * the quota configuration. This field can be used to override the default + * display name generated from the configuration. + * + * Generated from protobuf field string display_name = 12; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * User-visible display name for this limit. + * Optional. If not set, the UI will provide a default display name based on + * the quota configuration. This field can be used to override the default + * display name generated from the configuration. + * + * Generated from protobuf field string display_name = 12; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor.php b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor.php new file mode 100644 index 00000000..ef95a114 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor.php @@ -0,0 +1,455 @@ +google.api.ResourceDescriptor + */ +class ResourceDescriptor extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The resource type. It must be in the format of + * {service_name}/{resource_type_kind}. The `resource_type_kind` must be + * singular and must not include version numbers. + * Example: `storage.googleapis.com/Bucket` + * The value of the resource_type_kind must follow the regular expression + * /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and + * should use PascalCase (UpperCamelCase). The maximum number of + * characters allowed for the `resource_type_kind` is 100. + * + * Generated from protobuf field string type = 1; + */ + protected $type = ''; + /** + * Optional. The relative resource name pattern associated with this resource + * type. The DNS prefix of the full resource name shouldn't be specified here. + * The path pattern must follow the syntax, which aligns with HTTP binding + * syntax: + * Template = Segment { "/" Segment } ; + * Segment = LITERAL | Variable ; + * Variable = "{" LITERAL "}" ; + * Examples: + * - "projects/{project}/topics/{topic}" + * - "projects/{project}/knowledgeBases/{knowledge_base}" + * The components in braces correspond to the IDs for each resource in the + * hierarchy. It is expected that, if multiple patterns are provided, + * the same component name (e.g. "project") refers to IDs of the same + * type of resource. + * + * Generated from protobuf field repeated string pattern = 2; + */ + private $pattern; + /** + * Optional. The field on the resource that designates the resource name + * field. If omitted, this is assumed to be "name". + * + * Generated from protobuf field string name_field = 3; + */ + protected $name_field = ''; + /** + * Optional. The historical or future-looking state of the resource pattern. + * Example: + * // The InspectTemplate message originally only supported resource + * // names with organization, and project was added later. + * message InspectTemplate { + * option (google.api.resource) = { + * type: "dlp.googleapis.com/InspectTemplate" + * pattern: + * "organizations/{organization}/inspectTemplates/{inspect_template}" + * pattern: "projects/{project}/inspectTemplates/{inspect_template}" + * history: ORIGINALLY_SINGLE_PATTERN + * }; + * } + * + * Generated from protobuf field .google.api.ResourceDescriptor.History history = 4; + */ + protected $history = 0; + /** + * The plural name used in the resource name and permission names, such as + * 'projects' for the resource name of 'projects/{project}' and the permission + * name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same + * concept of the `plural` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Note: The plural form is required even for singleton resources. See + * https://aip.dev/156 + * + * Generated from protobuf field string plural = 5; + */ + protected $plural = ''; + /** + * The same concept of the `singular` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Such as "project" for the `resourcemanager.googleapis.com/Project` type. + * + * Generated from protobuf field string singular = 6; + */ + protected $singular = ''; + /** + * Style flag(s) for this resource. + * These indicate that a resource is expected to conform to a given + * style. See the specific style flags for additional information. + * + * Generated from protobuf field repeated .google.api.ResourceDescriptor.Style style = 10; + */ + private $style; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $type + * The resource type. It must be in the format of + * {service_name}/{resource_type_kind}. The `resource_type_kind` must be + * singular and must not include version numbers. + * Example: `storage.googleapis.com/Bucket` + * The value of the resource_type_kind must follow the regular expression + * /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and + * should use PascalCase (UpperCamelCase). The maximum number of + * characters allowed for the `resource_type_kind` is 100. + * @type array|\Google\Protobuf\Internal\RepeatedField $pattern + * Optional. The relative resource name pattern associated with this resource + * type. The DNS prefix of the full resource name shouldn't be specified here. + * The path pattern must follow the syntax, which aligns with HTTP binding + * syntax: + * Template = Segment { "/" Segment } ; + * Segment = LITERAL | Variable ; + * Variable = "{" LITERAL "}" ; + * Examples: + * - "projects/{project}/topics/{topic}" + * - "projects/{project}/knowledgeBases/{knowledge_base}" + * The components in braces correspond to the IDs for each resource in the + * hierarchy. It is expected that, if multiple patterns are provided, + * the same component name (e.g. "project") refers to IDs of the same + * type of resource. + * @type string $name_field + * Optional. The field on the resource that designates the resource name + * field. If omitted, this is assumed to be "name". + * @type int $history + * Optional. The historical or future-looking state of the resource pattern. + * Example: + * // The InspectTemplate message originally only supported resource + * // names with organization, and project was added later. + * message InspectTemplate { + * option (google.api.resource) = { + * type: "dlp.googleapis.com/InspectTemplate" + * pattern: + * "organizations/{organization}/inspectTemplates/{inspect_template}" + * pattern: "projects/{project}/inspectTemplates/{inspect_template}" + * history: ORIGINALLY_SINGLE_PATTERN + * }; + * } + * @type string $plural + * The plural name used in the resource name and permission names, such as + * 'projects' for the resource name of 'projects/{project}' and the permission + * name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same + * concept of the `plural` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Note: The plural form is required even for singleton resources. See + * https://aip.dev/156 + * @type string $singular + * The same concept of the `singular` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Such as "project" for the `resourcemanager.googleapis.com/Project` type. + * @type array|\Google\Protobuf\Internal\RepeatedField $style + * Style flag(s) for this resource. + * These indicate that a resource is expected to conform to a given + * style. See the specific style flags for additional information. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Resource::initOnce(); + parent::__construct($data); + } + /** + * The resource type. It must be in the format of + * {service_name}/{resource_type_kind}. The `resource_type_kind` must be + * singular and must not include version numbers. + * Example: `storage.googleapis.com/Bucket` + * The value of the resource_type_kind must follow the regular expression + * /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and + * should use PascalCase (UpperCamelCase). The maximum number of + * characters allowed for the `resource_type_kind` is 100. + * + * Generated from protobuf field string type = 1; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * The resource type. It must be in the format of + * {service_name}/{resource_type_kind}. The `resource_type_kind` must be + * singular and must not include version numbers. + * Example: `storage.googleapis.com/Bucket` + * The value of the resource_type_kind must follow the regular expression + * /[A-Za-z][a-zA-Z0-9]+/. It should start with an upper case character and + * should use PascalCase (UpperCamelCase). The maximum number of + * characters allowed for the `resource_type_kind` is 100. + * + * Generated from protobuf field string type = 1; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * Optional. The relative resource name pattern associated with this resource + * type. The DNS prefix of the full resource name shouldn't be specified here. + * The path pattern must follow the syntax, which aligns with HTTP binding + * syntax: + * Template = Segment { "/" Segment } ; + * Segment = LITERAL | Variable ; + * Variable = "{" LITERAL "}" ; + * Examples: + * - "projects/{project}/topics/{topic}" + * - "projects/{project}/knowledgeBases/{knowledge_base}" + * The components in braces correspond to the IDs for each resource in the + * hierarchy. It is expected that, if multiple patterns are provided, + * the same component name (e.g. "project") refers to IDs of the same + * type of resource. + * + * Generated from protobuf field repeated string pattern = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getPattern() + { + return $this->pattern; + } + /** + * Optional. The relative resource name pattern associated with this resource + * type. The DNS prefix of the full resource name shouldn't be specified here. + * The path pattern must follow the syntax, which aligns with HTTP binding + * syntax: + * Template = Segment { "/" Segment } ; + * Segment = LITERAL | Variable ; + * Variable = "{" LITERAL "}" ; + * Examples: + * - "projects/{project}/topics/{topic}" + * - "projects/{project}/knowledgeBases/{knowledge_base}" + * The components in braces correspond to the IDs for each resource in the + * hierarchy. It is expected that, if multiple patterns are provided, + * the same component name (e.g. "project") refers to IDs of the same + * type of resource. + * + * Generated from protobuf field repeated string pattern = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setPattern($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->pattern = $arr; + return $this; + } + /** + * Optional. The field on the resource that designates the resource name + * field. If omitted, this is assumed to be "name". + * + * Generated from protobuf field string name_field = 3; + * @return string + */ + public function getNameField() + { + return $this->name_field; + } + /** + * Optional. The field on the resource that designates the resource name + * field. If omitted, this is assumed to be "name". + * + * Generated from protobuf field string name_field = 3; + * @param string $var + * @return $this + */ + public function setNameField($var) + { + GPBUtil::checkString($var, True); + $this->name_field = $var; + return $this; + } + /** + * Optional. The historical or future-looking state of the resource pattern. + * Example: + * // The InspectTemplate message originally only supported resource + * // names with organization, and project was added later. + * message InspectTemplate { + * option (google.api.resource) = { + * type: "dlp.googleapis.com/InspectTemplate" + * pattern: + * "organizations/{organization}/inspectTemplates/{inspect_template}" + * pattern: "projects/{project}/inspectTemplates/{inspect_template}" + * history: ORIGINALLY_SINGLE_PATTERN + * }; + * } + * + * Generated from protobuf field .google.api.ResourceDescriptor.History history = 4; + * @return int + */ + public function getHistory() + { + return $this->history; + } + /** + * Optional. The historical or future-looking state of the resource pattern. + * Example: + * // The InspectTemplate message originally only supported resource + * // names with organization, and project was added later. + * message InspectTemplate { + * option (google.api.resource) = { + * type: "dlp.googleapis.com/InspectTemplate" + * pattern: + * "organizations/{organization}/inspectTemplates/{inspect_template}" + * pattern: "projects/{project}/inspectTemplates/{inspect_template}" + * history: ORIGINALLY_SINGLE_PATTERN + * }; + * } + * + * Generated from protobuf field .google.api.ResourceDescriptor.History history = 4; + * @param int $var + * @return $this + */ + public function setHistory($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ResourceDescriptor\History::class); + $this->history = $var; + return $this; + } + /** + * The plural name used in the resource name and permission names, such as + * 'projects' for the resource name of 'projects/{project}' and the permission + * name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same + * concept of the `plural` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Note: The plural form is required even for singleton resources. See + * https://aip.dev/156 + * + * Generated from protobuf field string plural = 5; + * @return string + */ + public function getPlural() + { + return $this->plural; + } + /** + * The plural name used in the resource name and permission names, such as + * 'projects' for the resource name of 'projects/{project}' and the permission + * name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same + * concept of the `plural` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Note: The plural form is required even for singleton resources. See + * https://aip.dev/156 + * + * Generated from protobuf field string plural = 5; + * @param string $var + * @return $this + */ + public function setPlural($var) + { + GPBUtil::checkString($var, True); + $this->plural = $var; + return $this; + } + /** + * The same concept of the `singular` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Such as "project" for the `resourcemanager.googleapis.com/Project` type. + * + * Generated from protobuf field string singular = 6; + * @return string + */ + public function getSingular() + { + return $this->singular; + } + /** + * The same concept of the `singular` field in k8s CRD spec + * https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/ + * Such as "project" for the `resourcemanager.googleapis.com/Project` type. + * + * Generated from protobuf field string singular = 6; + * @param string $var + * @return $this + */ + public function setSingular($var) + { + GPBUtil::checkString($var, True); + $this->singular = $var; + return $this; + } + /** + * Style flag(s) for this resource. + * These indicate that a resource is expected to conform to a given + * style. See the specific style flags for additional information. + * + * Generated from protobuf field repeated .google.api.ResourceDescriptor.Style style = 10; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getStyle() + { + return $this->style; + } + /** + * Style flag(s) for this resource. + * These indicate that a resource is expected to conform to a given + * style. See the specific style flags for additional information. + * + * Generated from protobuf field repeated .google.api.ResourceDescriptor.Style style = 10; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setStyle($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::ENUM, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\ResourceDescriptor\Style::class); + $this->style = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/History.php b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/History.php new file mode 100644 index 00000000..e5468800 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/History.php @@ -0,0 +1,53 @@ +google.api.ResourceDescriptor.History + */ +class History +{ + /** + * The "unset" value. + * + * Generated from protobuf enum HISTORY_UNSPECIFIED = 0; + */ + const HISTORY_UNSPECIFIED = 0; + /** + * The resource originally had one pattern and launched as such, and + * additional patterns were added later. + * + * Generated from protobuf enum ORIGINALLY_SINGLE_PATTERN = 1; + */ + const ORIGINALLY_SINGLE_PATTERN = 1; + /** + * The resource has one pattern, but the API owner expects to add more + * later. (This is the inverse of ORIGINALLY_SINGLE_PATTERN, and prevents + * that from being necessary once there are multiple patterns.) + * + * Generated from protobuf enum FUTURE_MULTI_PATTERN = 2; + */ + const FUTURE_MULTI_PATTERN = 2; + private static $valueToName = [self::HISTORY_UNSPECIFIED => 'HISTORY_UNSPECIFIED', self::ORIGINALLY_SINGLE_PATTERN => 'ORIGINALLY_SINGLE_PATTERN', self::FUTURE_MULTI_PATTERN => 'FUTURE_MULTI_PATTERN']; + 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/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/Style.php b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/Style.php new file mode 100644 index 00000000..70c27636 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ResourceDescriptor/Style.php @@ -0,0 +1,48 @@ +google.api.ResourceDescriptor.Style + */ +class Style +{ + /** + * The unspecified value. Do not use. + * + * Generated from protobuf enum STYLE_UNSPECIFIED = 0; + */ + const STYLE_UNSPECIFIED = 0; + /** + * This resource is intended to be "declarative-friendly". + * Declarative-friendly resources must be more strictly consistent, and + * setting this to true communicates to tools that this resource should + * adhere to declarative-friendly expectations. + * Note: This is used by the API linter (linter.aip.dev) to enable + * additional checks. + * + * Generated from protobuf enum DECLARATIVE_FRIENDLY = 1; + */ + const DECLARATIVE_FRIENDLY = 1; + private static $valueToName = [self::STYLE_UNSPECIFIED => 'STYLE_UNSPECIFIED', self::DECLARATIVE_FRIENDLY => 'DECLARATIVE_FRIENDLY']; + 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/vendor/Gcp/google/common-protos/src/Api/ResourceReference.php b/vendor/Gcp/google/common-protos/src/Api/ResourceReference.php new file mode 100644 index 00000000..35b65dde --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/ResourceReference.php @@ -0,0 +1,181 @@ +google.api.ResourceReference + */ +class ResourceReference extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The resource type that the annotated field references. + * Example: + * message Subscription { + * string topic = 2 [(google.api.resource_reference) = { + * type: "pubsub.googleapis.com/Topic" + * }]; + * } + * Occasionally, a field may reference an arbitrary resource. In this case, + * APIs use the special value * in their resource reference. + * Example: + * message GetIamPolicyRequest { + * string resource = 2 [(google.api.resource_reference) = { + * type: "*" + * }]; + * } + * + * Generated from protobuf field string type = 1; + */ + protected $type = ''; + /** + * The resource type of a child collection that the annotated field + * references. This is useful for annotating the `parent` field that + * doesn't have a fixed resource type. + * Example: + * message ListLogEntriesRequest { + * string parent = 1 [(google.api.resource_reference) = { + * child_type: "logging.googleapis.com/LogEntry" + * }; + * } + * + * Generated from protobuf field string child_type = 2; + */ + protected $child_type = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $type + * The resource type that the annotated field references. + * Example: + * message Subscription { + * string topic = 2 [(google.api.resource_reference) = { + * type: "pubsub.googleapis.com/Topic" + * }]; + * } + * Occasionally, a field may reference an arbitrary resource. In this case, + * APIs use the special value * in their resource reference. + * Example: + * message GetIamPolicyRequest { + * string resource = 2 [(google.api.resource_reference) = { + * type: "*" + * }]; + * } + * @type string $child_type + * The resource type of a child collection that the annotated field + * references. This is useful for annotating the `parent` field that + * doesn't have a fixed resource type. + * Example: + * message ListLogEntriesRequest { + * string parent = 1 [(google.api.resource_reference) = { + * child_type: "logging.googleapis.com/LogEntry" + * }; + * } + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Resource::initOnce(); + parent::__construct($data); + } + /** + * The resource type that the annotated field references. + * Example: + * message Subscription { + * string topic = 2 [(google.api.resource_reference) = { + * type: "pubsub.googleapis.com/Topic" + * }]; + * } + * Occasionally, a field may reference an arbitrary resource. In this case, + * APIs use the special value * in their resource reference. + * Example: + * message GetIamPolicyRequest { + * string resource = 2 [(google.api.resource_reference) = { + * type: "*" + * }]; + * } + * + * Generated from protobuf field string type = 1; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * The resource type that the annotated field references. + * Example: + * message Subscription { + * string topic = 2 [(google.api.resource_reference) = { + * type: "pubsub.googleapis.com/Topic" + * }]; + * } + * Occasionally, a field may reference an arbitrary resource. In this case, + * APIs use the special value * in their resource reference. + * Example: + * message GetIamPolicyRequest { + * string resource = 2 [(google.api.resource_reference) = { + * type: "*" + * }]; + * } + * + * Generated from protobuf field string type = 1; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * The resource type of a child collection that the annotated field + * references. This is useful for annotating the `parent` field that + * doesn't have a fixed resource type. + * Example: + * message ListLogEntriesRequest { + * string parent = 1 [(google.api.resource_reference) = { + * child_type: "logging.googleapis.com/LogEntry" + * }; + * } + * + * Generated from protobuf field string child_type = 2; + * @return string + */ + public function getChildType() + { + return $this->child_type; + } + /** + * The resource type of a child collection that the annotated field + * references. This is useful for annotating the `parent` field that + * doesn't have a fixed resource type. + * Example: + * message ListLogEntriesRequest { + * string parent = 1 [(google.api.resource_reference) = { + * child_type: "logging.googleapis.com/LogEntry" + * }; + * } + * + * Generated from protobuf field string child_type = 2; + * @param string $var + * @return $this + */ + public function setChildType($var) + { + GPBUtil::checkString($var, True); + $this->child_type = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/RoutingParameter.php b/vendor/Gcp/google/common-protos/src/Api/RoutingParameter.php new file mode 100644 index 00000000..44076fbe --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/RoutingParameter.php @@ -0,0 +1,272 @@ +google.api.RoutingParameter + */ +class RoutingParameter extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A request field to extract the header key-value pair from. + * + * Generated from protobuf field string field = 1; + */ + protected $field = ''; + /** + * A pattern matching the key-value field. Optional. + * If not specified, the whole field specified in the `field` field will be + * taken as value, and its name used as key. If specified, it MUST contain + * exactly one named segment (along with any number of unnamed segments) The + * pattern will be matched over the field specified in the `field` field, then + * if the match is successful: + * - the name of the single named segment will be used as a header name, + * - the match value of the segment will be used as a header value; + * if the match is NOT successful, nothing will be sent. + * Example: + * -- This is a field in the request message + * | that the header value will be extracted from. + * | + * | -- This is the key name in the + * | | routing header. + * V | + * field: "table_name" v + * path_template: "projects/*/{table_location=instances/*}/tables/*" + * ^ ^ + * | | + * In the {} brackets is the pattern that -- | + * specifies what to extract from the | + * field as a value to be sent. | + * | + * The string in the field must match the whole pattern -- + * before brackets, inside brackets, after brackets. + * When looking at this specific example, we can see that: + * - A key-value pair with the key `table_location` + * and the value matching `instances/*` should be added + * to the x-goog-request-params routing header. + * - The value is extracted from the request message's `table_name` field + * if it matches the full pattern specified: + * `projects/*/instances/*/tables/*`. + * **NB:** If the `path_template` field is not provided, the key name is + * equal to the field name, and the whole field should be sent as a value. + * This makes the pattern for the field and the value functionally equivalent + * to `**`, and the configuration + * { + * field: "table_name" + * } + * is a functionally equivalent shorthand to: + * { + * field: "table_name" + * path_template: "{table_name=**}" + * } + * See Example 1 for more details. + * + * Generated from protobuf field string path_template = 2; + */ + protected $path_template = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $field + * A request field to extract the header key-value pair from. + * @type string $path_template + * A pattern matching the key-value field. Optional. + * If not specified, the whole field specified in the `field` field will be + * taken as value, and its name used as key. If specified, it MUST contain + * exactly one named segment (along with any number of unnamed segments) The + * pattern will be matched over the field specified in the `field` field, then + * if the match is successful: + * - the name of the single named segment will be used as a header name, + * - the match value of the segment will be used as a header value; + * if the match is NOT successful, nothing will be sent. + * Example: + * -- This is a field in the request message + * | that the header value will be extracted from. + * | + * | -- This is the key name in the + * | | routing header. + * V | + * field: "table_name" v + * path_template: "projects/*/{table_location=instances/*}/tables/*" + * ^ ^ + * | | + * In the {} brackets is the pattern that -- | + * specifies what to extract from the | + * field as a value to be sent. | + * | + * The string in the field must match the whole pattern -- + * before brackets, inside brackets, after brackets. + * When looking at this specific example, we can see that: + * - A key-value pair with the key `table_location` + * and the value matching `instances/*` should be added + * to the x-goog-request-params routing header. + * - The value is extracted from the request message's `table_name` field + * if it matches the full pattern specified: + * `projects/*/instances/*/tables/*`. + * **NB:** If the `path_template` field is not provided, the key name is + * equal to the field name, and the whole field should be sent as a value. + * This makes the pattern for the field and the value functionally equivalent + * to `**`, and the configuration + * { + * field: "table_name" + * } + * is a functionally equivalent shorthand to: + * { + * field: "table_name" + * path_template: "{table_name=**}" + * } + * See Example 1 for more details. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Routing::initOnce(); + parent::__construct($data); + } + /** + * A request field to extract the header key-value pair from. + * + * Generated from protobuf field string field = 1; + * @return string + */ + public function getField() + { + return $this->field; + } + /** + * A request field to extract the header key-value pair from. + * + * Generated from protobuf field string field = 1; + * @param string $var + * @return $this + */ + public function setField($var) + { + GPBUtil::checkString($var, True); + $this->field = $var; + return $this; + } + /** + * A pattern matching the key-value field. Optional. + * If not specified, the whole field specified in the `field` field will be + * taken as value, and its name used as key. If specified, it MUST contain + * exactly one named segment (along with any number of unnamed segments) The + * pattern will be matched over the field specified in the `field` field, then + * if the match is successful: + * - the name of the single named segment will be used as a header name, + * - the match value of the segment will be used as a header value; + * if the match is NOT successful, nothing will be sent. + * Example: + * -- This is a field in the request message + * | that the header value will be extracted from. + * | + * | -- This is the key name in the + * | | routing header. + * V | + * field: "table_name" v + * path_template: "projects/*/{table_location=instances/*}/tables/*" + * ^ ^ + * | | + * In the {} brackets is the pattern that -- | + * specifies what to extract from the | + * field as a value to be sent. | + * | + * The string in the field must match the whole pattern -- + * before brackets, inside brackets, after brackets. + * When looking at this specific example, we can see that: + * - A key-value pair with the key `table_location` + * and the value matching `instances/*` should be added + * to the x-goog-request-params routing header. + * - The value is extracted from the request message's `table_name` field + * if it matches the full pattern specified: + * `projects/*/instances/*/tables/*`. + * **NB:** If the `path_template` field is not provided, the key name is + * equal to the field name, and the whole field should be sent as a value. + * This makes the pattern for the field and the value functionally equivalent + * to `**`, and the configuration + * { + * field: "table_name" + * } + * is a functionally equivalent shorthand to: + * { + * field: "table_name" + * path_template: "{table_name=**}" + * } + * See Example 1 for more details. + * + * Generated from protobuf field string path_template = 2; + * @return string + */ + public function getPathTemplate() + { + return $this->path_template; + } + /** + * A pattern matching the key-value field. Optional. + * If not specified, the whole field specified in the `field` field will be + * taken as value, and its name used as key. If specified, it MUST contain + * exactly one named segment (along with any number of unnamed segments) The + * pattern will be matched over the field specified in the `field` field, then + * if the match is successful: + * - the name of the single named segment will be used as a header name, + * - the match value of the segment will be used as a header value; + * if the match is NOT successful, nothing will be sent. + * Example: + * -- This is a field in the request message + * | that the header value will be extracted from. + * | + * | -- This is the key name in the + * | | routing header. + * V | + * field: "table_name" v + * path_template: "projects/*/{table_location=instances/*}/tables/*" + * ^ ^ + * | | + * In the {} brackets is the pattern that -- | + * specifies what to extract from the | + * field as a value to be sent. | + * | + * The string in the field must match the whole pattern -- + * before brackets, inside brackets, after brackets. + * When looking at this specific example, we can see that: + * - A key-value pair with the key `table_location` + * and the value matching `instances/*` should be added + * to the x-goog-request-params routing header. + * - The value is extracted from the request message's `table_name` field + * if it matches the full pattern specified: + * `projects/*/instances/*/tables/*`. + * **NB:** If the `path_template` field is not provided, the key name is + * equal to the field name, and the whole field should be sent as a value. + * This makes the pattern for the field and the value functionally equivalent + * to `**`, and the configuration + * { + * field: "table_name" + * } + * is a functionally equivalent shorthand to: + * { + * field: "table_name" + * path_template: "{table_name=**}" + * } + * See Example 1 for more details. + * + * Generated from protobuf field string path_template = 2; + * @param string $var + * @return $this + */ + public function setPathTemplate($var) + { + GPBUtil::checkString($var, True); + $this->path_template = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/RoutingRule.php b/vendor/Gcp/google/common-protos/src/Api/RoutingRule.php new file mode 100644 index 00000000..a652bdeb --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/RoutingRule.php @@ -0,0 +1,347 @@ +/tables/` + * // - `projects//instances//tables/
` + * // - `region//zones//tables/
` + * string table_name = 1; + * // This value specifies routing for replication. + * // It can be in the following formats: + * // - `profiles/` + * // - a legacy `profile_id` that can be any string + * string app_profile_id = 2; + * } + * Example message: + * { + * table_name: projects/proj_foo/instances/instance_bar/table/table_baz, + * app_profile_id: profiles/prof_qux + * } + * The routing header consists of one or multiple key-value pairs. Every key + * and value must be percent-encoded, and joined together in the format of + * `key1=value1&key2=value2`. + * In the examples below I am skipping the percent-encoding for readablity. + * Example 1 + * Extracting a field from the request to put into the routing header + * unchanged, with the key equal to the field name. + * annotation: + * option (google.api.routing) = { + * // Take the `app_profile_id`. + * routing_parameters { + * field: "app_profile_id" + * } + * }; + * result: + * x-goog-request-params: app_profile_id=profiles/prof_qux + * Example 2 + * Extracting a field from the request to put into the routing header + * unchanged, with the key different from the field name. + * annotation: + * option (google.api.routing) = { + * // Take the `app_profile_id`, but name it `routing_id` in the header. + * routing_parameters { + * field: "app_profile_id" + * path_template: "{routing_id=**}" + * } + * }; + * result: + * x-goog-request-params: routing_id=profiles/prof_qux + * Example 3 + * Extracting a field from the request to put into the routing + * header, while matching a path template syntax on the field's value. + * NB: it is more useful to send nothing than to send garbage for the purpose + * of dynamic routing, since garbage pollutes cache. Thus the matching. + * Sub-example 3a + * The field matches the template. + * annotation: + * option (google.api.routing) = { + * // Take the `table_name`, if it's well-formed (with project-based + * // syntax). + * routing_parameters { + * field: "table_name" + * path_template: "{table_name=projects/*/instances/*/**}" + * } + * }; + * result: + * x-goog-request-params: + * table_name=projects/proj_foo/instances/instance_bar/table/table_baz + * Sub-example 3b + * The field does not match the template. + * annotation: + * option (google.api.routing) = { + * // Take the `table_name`, if it's well-formed (with region-based + * // syntax). + * routing_parameters { + * field: "table_name" + * path_template: "{table_name=regions/*/zones/*/**}" + * } + * }; + * result: + * + * Sub-example 3c + * Multiple alternative conflictingly named path templates are + * specified. The one that matches is used to construct the header. + * annotation: + * option (google.api.routing) = { + * // Take the `table_name`, if it's well-formed, whether + * // using the region- or projects-based syntax. + * routing_parameters { + * field: "table_name" + * path_template: "{table_name=regions/*/zones/*/**}" + * } + * routing_parameters { + * field: "table_name" + * path_template: "{table_name=projects/*/instances/*/**}" + * } + * }; + * result: + * x-goog-request-params: + * table_name=projects/proj_foo/instances/instance_bar/table/table_baz + * Example 4 + * Extracting a single routing header key-value pair by matching a + * template syntax on (a part of) a single request field. + * annotation: + * option (google.api.routing) = { + * // Take just the project id from the `table_name` field. + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=projects/*}/**" + * } + * }; + * result: + * x-goog-request-params: routing_id=projects/proj_foo + * Example 5 + * Extracting a single routing header key-value pair by matching + * several conflictingly named path templates on (parts of) a single request + * field. The last template to match "wins" the conflict. + * annotation: + * option (google.api.routing) = { + * // If the `table_name` does not have instances information, + * // take just the project id for routing. + * // Otherwise take project + instance. + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=projects/*}/**" + * } + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=projects/*/instances/*}/**" + * } + * }; + * result: + * x-goog-request-params: + * routing_id=projects/proj_foo/instances/instance_bar + * Example 6 + * Extracting multiple routing header key-value pairs by matching + * several non-conflicting path templates on (parts of) a single request field. + * Sub-example 6a + * Make the templates strict, so that if the `table_name` does not + * have an instance information, nothing is sent. + * annotation: + * option (google.api.routing) = { + * // The routing code needs two keys instead of one composite + * // but works only for the tables with the "project-instance" name + * // syntax. + * routing_parameters { + * field: "table_name" + * path_template: "{project_id=projects/*}/instances/*/**" + * } + * routing_parameters { + * field: "table_name" + * path_template: "projects/*/{instance_id=instances/*}/**" + * } + * }; + * result: + * x-goog-request-params: + * project_id=projects/proj_foo&instance_id=instances/instance_bar + * Sub-example 6b + * Make the templates loose, so that if the `table_name` does not + * have an instance information, just the project id part is sent. + * annotation: + * option (google.api.routing) = { + * // The routing code wants two keys instead of one composite + * // but will work with just the `project_id` for tables without + * // an instance in the `table_name`. + * routing_parameters { + * field: "table_name" + * path_template: "{project_id=projects/*}/**" + * } + * routing_parameters { + * field: "table_name" + * path_template: "projects/*/{instance_id=instances/*}/**" + * } + * }; + * result (is the same as 6a for our example message because it has the instance + * information): + * x-goog-request-params: + * project_id=projects/proj_foo&instance_id=instances/instance_bar + * Example 7 + * Extracting multiple routing header key-value pairs by matching + * several path templates on multiple request fields. + * NB: note that here there is no way to specify sending nothing if one of the + * fields does not match its template. E.g. if the `table_name` is in the wrong + * format, the `project_id` will not be sent, but the `routing_id` will be. + * The backend routing code has to be aware of that and be prepared to not + * receive a full complement of keys if it expects multiple. + * annotation: + * option (google.api.routing) = { + * // The routing needs both `project_id` and `routing_id` + * // (from the `app_profile_id` field) for routing. + * routing_parameters { + * field: "table_name" + * path_template: "{project_id=projects/*}/**" + * } + * routing_parameters { + * field: "app_profile_id" + * path_template: "{routing_id=**}" + * } + * }; + * result: + * x-goog-request-params: + * project_id=projects/proj_foo&routing_id=profiles/prof_qux + * Example 8 + * Extracting a single routing header key-value pair by matching + * several conflictingly named path templates on several request fields. The + * last template to match "wins" the conflict. + * annotation: + * option (google.api.routing) = { + * // The `routing_id` can be a project id or a region id depending on + * // the table name format, but only if the `app_profile_id` is not set. + * // If `app_profile_id` is set it should be used instead. + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=projects/*}/**" + * } + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=regions/*}/**" + * } + * routing_parameters { + * field: "app_profile_id" + * path_template: "{routing_id=**}" + * } + * }; + * result: + * x-goog-request-params: routing_id=profiles/prof_qux + * Example 9 + * Bringing it all together. + * annotation: + * option (google.api.routing) = { + * // For routing both `table_location` and a `routing_id` are needed. + * // + * // table_location can be either an instance id or a region+zone id. + * // + * // For `routing_id`, take the value of `app_profile_id` + * // - If it's in the format `profiles/`, send + * // just the `` part. + * // - If it's any other literal, send it as is. + * // If the `app_profile_id` is empty, and the `table_name` starts with + * // the project_id, send that instead. + * routing_parameters { + * field: "table_name" + * path_template: "projects/*/{table_location=instances/*}/tables/*" + * } + * routing_parameters { + * field: "table_name" + * path_template: "{table_location=regions/*/zones/*}/tables/*" + * } + * routing_parameters { + * field: "table_name" + * path_template: "{routing_id=projects/*}/**" + * } + * routing_parameters { + * field: "app_profile_id" + * path_template: "{routing_id=**}" + * } + * routing_parameters { + * field: "app_profile_id" + * path_template: "profiles/{routing_id=*}" + * } + * }; + * result: + * x-goog-request-params: + * table_location=instances/instance_bar&routing_id=prof_qux + * + * Generated from protobuf message google.api.RoutingRule + */ +class RoutingRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A collection of Routing Parameter specifications. + * **NOTE:** If multiple Routing Parameters describe the same key + * (via the `path_template` field or via the `field` field when + * `path_template` is not provided), "last one wins" rule + * determines which Parameter gets used. + * See the examples for more details. + * + * Generated from protobuf field repeated .google.api.RoutingParameter routing_parameters = 2; + */ + private $routing_parameters; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\RoutingParameter>|\Google\Protobuf\Internal\RepeatedField $routing_parameters + * A collection of Routing Parameter specifications. + * **NOTE:** If multiple Routing Parameters describe the same key + * (via the `path_template` field or via the `field` field when + * `path_template` is not provided), "last one wins" rule + * determines which Parameter gets used. + * See the examples for more details. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Routing::initOnce(); + parent::__construct($data); + } + /** + * A collection of Routing Parameter specifications. + * **NOTE:** If multiple Routing Parameters describe the same key + * (via the `path_template` field or via the `field` field when + * `path_template` is not provided), "last one wins" rule + * determines which Parameter gets used. + * See the examples for more details. + * + * Generated from protobuf field repeated .google.api.RoutingParameter routing_parameters = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRoutingParameters() + { + return $this->routing_parameters; + } + /** + * A collection of Routing Parameter specifications. + * **NOTE:** If multiple Routing Parameters describe the same key + * (via the `path_template` field or via the `field` field when + * `path_template` is not provided), "last one wins" rule + * determines which Parameter gets used. + * See the examples for more details. + * + * Generated from protobuf field repeated .google.api.RoutingParameter routing_parameters = 2; + * @param array<\Google\Api\RoutingParameter>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRoutingParameters($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\RoutingParameter::class); + $this->routing_parameters = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/RubySettings.php b/vendor/Gcp/google/common-protos/src/Api/RubySettings.php new file mode 100644 index 00000000..4e84b055 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/RubySettings.php @@ -0,0 +1,69 @@ +google.api.RubySettings + */ +class RubySettings extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + */ + protected $common = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Api\CommonLanguageSettings $common + * Some settings. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Client::initOnce(); + parent::__construct($data); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @return \Google\Api\CommonLanguageSettings|null + */ + public function getCommon() + { + return $this->common; + } + public function hasCommon() + { + return isset($this->common); + } + public function clearCommon() + { + unset($this->common); + } + /** + * Some settings. + * + * Generated from protobuf field .google.api.CommonLanguageSettings common = 1; + * @param \Google\Api\CommonLanguageSettings $var + * @return $this + */ + public function setCommon($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\CommonLanguageSettings::class); + $this->common = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Service.php b/vendor/Gcp/google/common-protos/src/Api/Service.php new file mode 100644 index 00000000..7ccb6052 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Service.php @@ -0,0 +1,1132 @@ +google.api.Service + */ +class Service extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The service name, which is a DNS-like logical identifier for the + * service, such as `calendar.googleapis.com`. The service name + * typically goes through DNS verification to make sure the owner + * of the service also owns the DNS name. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The product title for this service, it is the name displayed in Google + * Cloud Console. + * + * Generated from protobuf field string title = 2; + */ + protected $title = ''; + /** + * The Google project that owns this service. + * + * Generated from protobuf field string producer_project_id = 22; + */ + protected $producer_project_id = ''; + /** + * A unique ID for a specific instance of this message, typically assigned + * by the client for tracking purpose. Must be no longer than 63 characters + * and only lower case letters, digits, '.', '_' and '-' are allowed. If + * empty, the server may choose to generate one instead. + * + * Generated from protobuf field string id = 33; + */ + protected $id = ''; + /** + * A list of API interfaces exported by this service. Only the `name` field + * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by + * the configuration author, as the remaining fields will be derived from the + * IDL during the normalization process. It is an error to specify an API + * interface here which cannot be resolved against the associated IDL files. + * + * Generated from protobuf field repeated .google.protobuf.Api apis = 3; + */ + private $apis; + /** + * A list of all proto message types included in this API service. + * Types referenced directly or indirectly by the `apis` are automatically + * included. Messages which are not referenced but shall be included, such as + * types used by the `google.protobuf.Any` type, should be listed here by + * name by the configuration author. Example: + * types: + * - name: google.protobuf.Int32 + * + * Generated from protobuf field repeated .google.protobuf.Type types = 4; + */ + private $types; + /** + * A list of all enum types included in this API service. Enums referenced + * directly or indirectly by the `apis` are automatically included. Enums + * which are not referenced but shall be included should be listed here by + * name by the configuration author. Example: + * enums: + * - name: google.someapi.v1.SomeEnum + * + * Generated from protobuf field repeated .google.protobuf.Enum enums = 5; + */ + private $enums; + /** + * Additional API documentation. + * + * Generated from protobuf field .google.api.Documentation documentation = 6; + */ + protected $documentation = null; + /** + * API backend configuration. + * + * Generated from protobuf field .google.api.Backend backend = 8; + */ + protected $backend = null; + /** + * HTTP configuration. + * + * Generated from protobuf field .google.api.Http http = 9; + */ + protected $http = null; + /** + * Quota configuration. + * + * Generated from protobuf field .google.api.Quota quota = 10; + */ + protected $quota = null; + /** + * Auth configuration. + * + * Generated from protobuf field .google.api.Authentication authentication = 11; + */ + protected $authentication = null; + /** + * Context configuration. + * + * Generated from protobuf field .google.api.Context context = 12; + */ + protected $context = null; + /** + * Configuration controlling usage of this service. + * + * Generated from protobuf field .google.api.Usage usage = 15; + */ + protected $usage = null; + /** + * Configuration for network endpoints. If this is empty, then an endpoint + * with the same name as the service is automatically generated to service all + * defined APIs. + * + * Generated from protobuf field repeated .google.api.Endpoint endpoints = 18; + */ + private $endpoints; + /** + * Configuration for the service control plane. + * + * Generated from protobuf field .google.api.Control control = 21; + */ + protected $control = null; + /** + * Defines the logs used by this service. + * + * Generated from protobuf field repeated .google.api.LogDescriptor logs = 23; + */ + private $logs; + /** + * Defines the metrics used by this service. + * + * Generated from protobuf field repeated .google.api.MetricDescriptor metrics = 24; + */ + private $metrics; + /** + * Defines the monitored resources used by this service. This is required + * by the [Service.monitoring][google.api.Service.monitoring] and + * [Service.logging][google.api.Service.logging] configurations. + * + * Generated from protobuf field repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25; + */ + private $monitored_resources; + /** + * Billing configuration. + * + * Generated from protobuf field .google.api.Billing billing = 26; + */ + protected $billing = null; + /** + * Logging configuration. + * + * Generated from protobuf field .google.api.Logging logging = 27; + */ + protected $logging = null; + /** + * Monitoring configuration. + * + * Generated from protobuf field .google.api.Monitoring monitoring = 28; + */ + protected $monitoring = null; + /** + * System parameter configuration. + * + * Generated from protobuf field .google.api.SystemParameters system_parameters = 29; + */ + protected $system_parameters = null; + /** + * Output only. The source information for this configuration if available. + * + * Generated from protobuf field .google.api.SourceInfo source_info = 37; + */ + protected $source_info = null; + /** + * Settings for [Google Cloud Client + * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) + * generated from APIs defined as protocol buffers. + * + * Generated from protobuf field .google.api.Publishing publishing = 45; + */ + protected $publishing = null; + /** + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * + * Generated from protobuf field .google.protobuf.UInt32Value config_version = 20; + */ + protected $config_version = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The service name, which is a DNS-like logical identifier for the + * service, such as `calendar.googleapis.com`. The service name + * typically goes through DNS verification to make sure the owner + * of the service also owns the DNS name. + * @type string $title + * The product title for this service, it is the name displayed in Google + * Cloud Console. + * @type string $producer_project_id + * The Google project that owns this service. + * @type string $id + * A unique ID for a specific instance of this message, typically assigned + * by the client for tracking purpose. Must be no longer than 63 characters + * and only lower case letters, digits, '.', '_' and '-' are allowed. If + * empty, the server may choose to generate one instead. + * @type array<\Google\Protobuf\Api>|\Google\Protobuf\Internal\RepeatedField $apis + * A list of API interfaces exported by this service. Only the `name` field + * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by + * the configuration author, as the remaining fields will be derived from the + * IDL during the normalization process. It is an error to specify an API + * interface here which cannot be resolved against the associated IDL files. + * @type array<\Google\Protobuf\Type>|\Google\Protobuf\Internal\RepeatedField $types + * A list of all proto message types included in this API service. + * Types referenced directly or indirectly by the `apis` are automatically + * included. Messages which are not referenced but shall be included, such as + * types used by the `google.protobuf.Any` type, should be listed here by + * name by the configuration author. Example: + * types: + * - name: google.protobuf.Int32 + * @type array<\Google\Protobuf\Enum>|\Google\Protobuf\Internal\RepeatedField $enums + * A list of all enum types included in this API service. Enums referenced + * directly or indirectly by the `apis` are automatically included. Enums + * which are not referenced but shall be included should be listed here by + * name by the configuration author. Example: + * enums: + * - name: google.someapi.v1.SomeEnum + * @type \Google\Api\Documentation $documentation + * Additional API documentation. + * @type \Google\Api\Backend $backend + * API backend configuration. + * @type \Google\Api\Http $http + * HTTP configuration. + * @type \Google\Api\Quota $quota + * Quota configuration. + * @type \Google\Api\Authentication $authentication + * Auth configuration. + * @type \Google\Api\Context $context + * Context configuration. + * @type \Google\Api\Usage $usage + * Configuration controlling usage of this service. + * @type array<\Google\Api\Endpoint>|\Google\Protobuf\Internal\RepeatedField $endpoints + * Configuration for network endpoints. If this is empty, then an endpoint + * with the same name as the service is automatically generated to service all + * defined APIs. + * @type \Google\Api\Control $control + * Configuration for the service control plane. + * @type array<\Google\Api\LogDescriptor>|\Google\Protobuf\Internal\RepeatedField $logs + * Defines the logs used by this service. + * @type array<\Google\Api\MetricDescriptor>|\Google\Protobuf\Internal\RepeatedField $metrics + * Defines the metrics used by this service. + * @type array<\Google\Api\MonitoredResourceDescriptor>|\Google\Protobuf\Internal\RepeatedField $monitored_resources + * Defines the monitored resources used by this service. This is required + * by the [Service.monitoring][google.api.Service.monitoring] and + * [Service.logging][google.api.Service.logging] configurations. + * @type \Google\Api\Billing $billing + * Billing configuration. + * @type \Google\Api\Logging $logging + * Logging configuration. + * @type \Google\Api\Monitoring $monitoring + * Monitoring configuration. + * @type \Google\Api\SystemParameters $system_parameters + * System parameter configuration. + * @type \Google\Api\SourceInfo $source_info + * Output only. The source information for this configuration if available. + * @type \Google\Api\Publishing $publishing + * Settings for [Google Cloud Client + * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) + * generated from APIs defined as protocol buffers. + * @type \Google\Protobuf\UInt32Value $config_version + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Service::initOnce(); + parent::__construct($data); + } + /** + * The service name, which is a DNS-like logical identifier for the + * service, such as `calendar.googleapis.com`. The service name + * typically goes through DNS verification to make sure the owner + * of the service also owns the DNS name. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The service name, which is a DNS-like logical identifier for the + * service, such as `calendar.googleapis.com`. The service name + * typically goes through DNS verification to make sure the owner + * of the service also owns the DNS name. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The product title for this service, it is the name displayed in Google + * Cloud Console. + * + * Generated from protobuf field string title = 2; + * @return string + */ + public function getTitle() + { + return $this->title; + } + /** + * The product title for this service, it is the name displayed in Google + * Cloud Console. + * + * Generated from protobuf field string title = 2; + * @param string $var + * @return $this + */ + public function setTitle($var) + { + GPBUtil::checkString($var, True); + $this->title = $var; + return $this; + } + /** + * The Google project that owns this service. + * + * Generated from protobuf field string producer_project_id = 22; + * @return string + */ + public function getProducerProjectId() + { + return $this->producer_project_id; + } + /** + * The Google project that owns this service. + * + * Generated from protobuf field string producer_project_id = 22; + * @param string $var + * @return $this + */ + public function setProducerProjectId($var) + { + GPBUtil::checkString($var, True); + $this->producer_project_id = $var; + return $this; + } + /** + * A unique ID for a specific instance of this message, typically assigned + * by the client for tracking purpose. Must be no longer than 63 characters + * and only lower case letters, digits, '.', '_' and '-' are allowed. If + * empty, the server may choose to generate one instead. + * + * Generated from protobuf field string id = 33; + * @return string + */ + public function getId() + { + return $this->id; + } + /** + * A unique ID for a specific instance of this message, typically assigned + * by the client for tracking purpose. Must be no longer than 63 characters + * and only lower case letters, digits, '.', '_' and '-' are allowed. If + * empty, the server may choose to generate one instead. + * + * Generated from protobuf field string id = 33; + * @param string $var + * @return $this + */ + public function setId($var) + { + GPBUtil::checkString($var, True); + $this->id = $var; + return $this; + } + /** + * A list of API interfaces exported by this service. Only the `name` field + * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by + * the configuration author, as the remaining fields will be derived from the + * IDL during the normalization process. It is an error to specify an API + * interface here which cannot be resolved against the associated IDL files. + * + * Generated from protobuf field repeated .google.protobuf.Api apis = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getApis() + { + return $this->apis; + } + /** + * A list of API interfaces exported by this service. Only the `name` field + * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by + * the configuration author, as the remaining fields will be derived from the + * IDL during the normalization process. It is an error to specify an API + * interface here which cannot be resolved against the associated IDL files. + * + * Generated from protobuf field repeated .google.protobuf.Api apis = 3; + * @param array<\Google\Protobuf\Api>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setApis($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Api::class); + $this->apis = $arr; + return $this; + } + /** + * A list of all proto message types included in this API service. + * Types referenced directly or indirectly by the `apis` are automatically + * included. Messages which are not referenced but shall be included, such as + * types used by the `google.protobuf.Any` type, should be listed here by + * name by the configuration author. Example: + * types: + * - name: google.protobuf.Int32 + * + * Generated from protobuf field repeated .google.protobuf.Type types = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getTypes() + { + return $this->types; + } + /** + * A list of all proto message types included in this API service. + * Types referenced directly or indirectly by the `apis` are automatically + * included. Messages which are not referenced but shall be included, such as + * types used by the `google.protobuf.Any` type, should be listed here by + * name by the configuration author. Example: + * types: + * - name: google.protobuf.Int32 + * + * Generated from protobuf field repeated .google.protobuf.Type types = 4; + * @param array<\Google\Protobuf\Type>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setTypes($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Type::class); + $this->types = $arr; + return $this; + } + /** + * A list of all enum types included in this API service. Enums referenced + * directly or indirectly by the `apis` are automatically included. Enums + * which are not referenced but shall be included should be listed here by + * name by the configuration author. Example: + * enums: + * - name: google.someapi.v1.SomeEnum + * + * Generated from protobuf field repeated .google.protobuf.Enum enums = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getEnums() + { + return $this->enums; + } + /** + * A list of all enum types included in this API service. Enums referenced + * directly or indirectly by the `apis` are automatically included. Enums + * which are not referenced but shall be included should be listed here by + * name by the configuration author. Example: + * enums: + * - name: google.someapi.v1.SomeEnum + * + * Generated from protobuf field repeated .google.protobuf.Enum enums = 5; + * @param array<\Google\Protobuf\Enum>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setEnums($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Enum::class); + $this->enums = $arr; + return $this; + } + /** + * Additional API documentation. + * + * Generated from protobuf field .google.api.Documentation documentation = 6; + * @return \Google\Api\Documentation|null + */ + public function getDocumentation() + { + return $this->documentation; + } + public function hasDocumentation() + { + return isset($this->documentation); + } + public function clearDocumentation() + { + unset($this->documentation); + } + /** + * Additional API documentation. + * + * Generated from protobuf field .google.api.Documentation documentation = 6; + * @param \Google\Api\Documentation $var + * @return $this + */ + public function setDocumentation($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Documentation::class); + $this->documentation = $var; + return $this; + } + /** + * API backend configuration. + * + * Generated from protobuf field .google.api.Backend backend = 8; + * @return \Google\Api\Backend|null + */ + public function getBackend() + { + return $this->backend; + } + public function hasBackend() + { + return isset($this->backend); + } + public function clearBackend() + { + unset($this->backend); + } + /** + * API backend configuration. + * + * Generated from protobuf field .google.api.Backend backend = 8; + * @param \Google\Api\Backend $var + * @return $this + */ + public function setBackend($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Backend::class); + $this->backend = $var; + return $this; + } + /** + * HTTP configuration. + * + * Generated from protobuf field .google.api.Http http = 9; + * @return \Google\Api\Http|null + */ + public function getHttp() + { + return $this->http; + } + public function hasHttp() + { + return isset($this->http); + } + public function clearHttp() + { + unset($this->http); + } + /** + * HTTP configuration. + * + * Generated from protobuf field .google.api.Http http = 9; + * @param \Google\Api\Http $var + * @return $this + */ + public function setHttp($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Http::class); + $this->http = $var; + return $this; + } + /** + * Quota configuration. + * + * Generated from protobuf field .google.api.Quota quota = 10; + * @return \Google\Api\Quota|null + */ + public function getQuota() + { + return $this->quota; + } + public function hasQuota() + { + return isset($this->quota); + } + public function clearQuota() + { + unset($this->quota); + } + /** + * Quota configuration. + * + * Generated from protobuf field .google.api.Quota quota = 10; + * @param \Google\Api\Quota $var + * @return $this + */ + public function setQuota($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Quota::class); + $this->quota = $var; + return $this; + } + /** + * Auth configuration. + * + * Generated from protobuf field .google.api.Authentication authentication = 11; + * @return \Google\Api\Authentication|null + */ + public function getAuthentication() + { + return $this->authentication; + } + public function hasAuthentication() + { + return isset($this->authentication); + } + public function clearAuthentication() + { + unset($this->authentication); + } + /** + * Auth configuration. + * + * Generated from protobuf field .google.api.Authentication authentication = 11; + * @param \Google\Api\Authentication $var + * @return $this + */ + public function setAuthentication($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Authentication::class); + $this->authentication = $var; + return $this; + } + /** + * Context configuration. + * + * Generated from protobuf field .google.api.Context context = 12; + * @return \Google\Api\Context|null + */ + public function getContext() + { + return $this->context; + } + public function hasContext() + { + return isset($this->context); + } + public function clearContext() + { + unset($this->context); + } + /** + * Context configuration. + * + * Generated from protobuf field .google.api.Context context = 12; + * @param \Google\Api\Context $var + * @return $this + */ + public function setContext($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Context::class); + $this->context = $var; + return $this; + } + /** + * Configuration controlling usage of this service. + * + * Generated from protobuf field .google.api.Usage usage = 15; + * @return \Google\Api\Usage|null + */ + public function getUsage() + { + return $this->usage; + } + public function hasUsage() + { + return isset($this->usage); + } + public function clearUsage() + { + unset($this->usage); + } + /** + * Configuration controlling usage of this service. + * + * Generated from protobuf field .google.api.Usage usage = 15; + * @param \Google\Api\Usage $var + * @return $this + */ + public function setUsage($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Usage::class); + $this->usage = $var; + return $this; + } + /** + * Configuration for network endpoints. If this is empty, then an endpoint + * with the same name as the service is automatically generated to service all + * defined APIs. + * + * Generated from protobuf field repeated .google.api.Endpoint endpoints = 18; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getEndpoints() + { + return $this->endpoints; + } + /** + * Configuration for network endpoints. If this is empty, then an endpoint + * with the same name as the service is automatically generated to service all + * defined APIs. + * + * Generated from protobuf field repeated .google.api.Endpoint endpoints = 18; + * @param array<\Google\Api\Endpoint>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setEndpoints($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Endpoint::class); + $this->endpoints = $arr; + return $this; + } + /** + * Configuration for the service control plane. + * + * Generated from protobuf field .google.api.Control control = 21; + * @return \Google\Api\Control|null + */ + public function getControl() + { + return $this->control; + } + public function hasControl() + { + return isset($this->control); + } + public function clearControl() + { + unset($this->control); + } + /** + * Configuration for the service control plane. + * + * Generated from protobuf field .google.api.Control control = 21; + * @param \Google\Api\Control $var + * @return $this + */ + public function setControl($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Control::class); + $this->control = $var; + return $this; + } + /** + * Defines the logs used by this service. + * + * Generated from protobuf field repeated .google.api.LogDescriptor logs = 23; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLogs() + { + return $this->logs; + } + /** + * Defines the logs used by this service. + * + * Generated from protobuf field repeated .google.api.LogDescriptor logs = 23; + * @param array<\Google\Api\LogDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLogs($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\LogDescriptor::class); + $this->logs = $arr; + return $this; + } + /** + * Defines the metrics used by this service. + * + * Generated from protobuf field repeated .google.api.MetricDescriptor metrics = 24; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMetrics() + { + return $this->metrics; + } + /** + * Defines the metrics used by this service. + * + * Generated from protobuf field repeated .google.api.MetricDescriptor metrics = 24; + * @param array<\Google\Api\MetricDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMetrics($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MetricDescriptor::class); + $this->metrics = $arr; + return $this; + } + /** + * Defines the monitored resources used by this service. This is required + * by the [Service.monitoring][google.api.Service.monitoring] and + * [Service.logging][google.api.Service.logging] configurations. + * + * Generated from protobuf field repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMonitoredResources() + { + return $this->monitored_resources; + } + /** + * Defines the monitored resources used by this service. This is required + * by the [Service.monitoring][google.api.Service.monitoring] and + * [Service.logging][google.api.Service.logging] configurations. + * + * Generated from protobuf field repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25; + * @param array<\Google\Api\MonitoredResourceDescriptor>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMonitoredResources($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\MonitoredResourceDescriptor::class); + $this->monitored_resources = $arr; + return $this; + } + /** + * Billing configuration. + * + * Generated from protobuf field .google.api.Billing billing = 26; + * @return \Google\Api\Billing|null + */ + public function getBilling() + { + return $this->billing; + } + public function hasBilling() + { + return isset($this->billing); + } + public function clearBilling() + { + unset($this->billing); + } + /** + * Billing configuration. + * + * Generated from protobuf field .google.api.Billing billing = 26; + * @param \Google\Api\Billing $var + * @return $this + */ + public function setBilling($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Billing::class); + $this->billing = $var; + return $this; + } + /** + * Logging configuration. + * + * Generated from protobuf field .google.api.Logging logging = 27; + * @return \Google\Api\Logging|null + */ + public function getLogging() + { + return $this->logging; + } + public function hasLogging() + { + return isset($this->logging); + } + public function clearLogging() + { + unset($this->logging); + } + /** + * Logging configuration. + * + * Generated from protobuf field .google.api.Logging logging = 27; + * @param \Google\Api\Logging $var + * @return $this + */ + public function setLogging($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Logging::class); + $this->logging = $var; + return $this; + } + /** + * Monitoring configuration. + * + * Generated from protobuf field .google.api.Monitoring monitoring = 28; + * @return \Google\Api\Monitoring|null + */ + public function getMonitoring() + { + return $this->monitoring; + } + public function hasMonitoring() + { + return isset($this->monitoring); + } + public function clearMonitoring() + { + unset($this->monitoring); + } + /** + * Monitoring configuration. + * + * Generated from protobuf field .google.api.Monitoring monitoring = 28; + * @param \Google\Api\Monitoring $var + * @return $this + */ + public function setMonitoring($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Monitoring::class); + $this->monitoring = $var; + return $this; + } + /** + * System parameter configuration. + * + * Generated from protobuf field .google.api.SystemParameters system_parameters = 29; + * @return \Google\Api\SystemParameters|null + */ + public function getSystemParameters() + { + return $this->system_parameters; + } + public function hasSystemParameters() + { + return isset($this->system_parameters); + } + public function clearSystemParameters() + { + unset($this->system_parameters); + } + /** + * System parameter configuration. + * + * Generated from protobuf field .google.api.SystemParameters system_parameters = 29; + * @param \Google\Api\SystemParameters $var + * @return $this + */ + public function setSystemParameters($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\SystemParameters::class); + $this->system_parameters = $var; + return $this; + } + /** + * Output only. The source information for this configuration if available. + * + * Generated from protobuf field .google.api.SourceInfo source_info = 37; + * @return \Google\Api\SourceInfo|null + */ + public function getSourceInfo() + { + return $this->source_info; + } + public function hasSourceInfo() + { + return isset($this->source_info); + } + public function clearSourceInfo() + { + unset($this->source_info); + } + /** + * Output only. The source information for this configuration if available. + * + * Generated from protobuf field .google.api.SourceInfo source_info = 37; + * @param \Google\Api\SourceInfo $var + * @return $this + */ + public function setSourceInfo($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\SourceInfo::class); + $this->source_info = $var; + return $this; + } + /** + * Settings for [Google Cloud Client + * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) + * generated from APIs defined as protocol buffers. + * + * Generated from protobuf field .google.api.Publishing publishing = 45; + * @return \Google\Api\Publishing|null + */ + public function getPublishing() + { + return $this->publishing; + } + public function hasPublishing() + { + return isset($this->publishing); + } + public function clearPublishing() + { + unset($this->publishing); + } + /** + * Settings for [Google Cloud Client + * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries) + * generated from APIs defined as protocol buffers. + * + * Generated from protobuf field .google.api.Publishing publishing = 45; + * @param \Google\Api\Publishing $var + * @return $this + */ + public function setPublishing($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\Publishing::class); + $this->publishing = $var; + return $this; + } + /** + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * + * Generated from protobuf field .google.protobuf.UInt32Value config_version = 20; + * @return \Google\Protobuf\UInt32Value|null + */ + public function getConfigVersion() + { + return $this->config_version; + } + public function hasConfigVersion() + { + return isset($this->config_version); + } + public function clearConfigVersion() + { + unset($this->config_version); + } + /** + * Returns the unboxed value from getConfigVersion() + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * + * Generated from protobuf field .google.protobuf.UInt32Value config_version = 20; + * @return int|null + */ + public function getConfigVersionUnwrapped() + { + return $this->readWrapperValue("config_version"); + } + /** + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * + * Generated from protobuf field .google.protobuf.UInt32Value config_version = 20; + * @param \Google\Protobuf\UInt32Value $var + * @return $this + */ + public function setConfigVersion($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\UInt32Value::class); + $this->config_version = $var; + return $this; + } + /** + * Sets the field by wrapping a primitive type in a Google\Protobuf\UInt32Value object. + * Obsolete. Do not use. + * This field has no semantic meaning. The service config compiler always + * sets this field to `3`. + * + * Generated from protobuf field .google.protobuf.UInt32Value config_version = 20; + * @param int|null $var + * @return $this + */ + public function setConfigVersionUnwrapped($var) + { + $this->writeWrapperValue("config_version", $var); + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/SourceInfo.php b/vendor/Gcp/google/common-protos/src/Api/SourceInfo.php new file mode 100644 index 00000000..13d4ef95 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/SourceInfo.php @@ -0,0 +1,61 @@ +google.api.SourceInfo + */ +class SourceInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * All files used during config generation. + * + * Generated from protobuf field repeated .google.protobuf.Any source_files = 1; + */ + private $source_files; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $source_files + * All files used during config generation. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\SourceInfo::initOnce(); + parent::__construct($data); + } + /** + * All files used during config generation. + * + * Generated from protobuf field repeated .google.protobuf.Any source_files = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getSourceFiles() + { + return $this->source_files; + } + /** + * All files used during config generation. + * + * Generated from protobuf field repeated .google.protobuf.Any source_files = 1; + * @param array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setSourceFiles($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->source_files = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/SystemParameter.php b/vendor/Gcp/google/common-protos/src/Api/SystemParameter.php new file mode 100644 index 00000000..07d7c9d1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/SystemParameter.php @@ -0,0 +1,133 @@ +google.api.SystemParameter + */ +class SystemParameter extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Define the name of the parameter, such as "api_key" . It is case sensitive. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * Define the HTTP header name to use for the parameter. It is case + * insensitive. + * + * Generated from protobuf field string http_header = 2; + */ + protected $http_header = ''; + /** + * Define the URL query parameter name to use for the parameter. It is case + * sensitive. + * + * Generated from protobuf field string url_query_parameter = 3; + */ + protected $url_query_parameter = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Define the name of the parameter, such as "api_key" . It is case sensitive. + * @type string $http_header + * Define the HTTP header name to use for the parameter. It is case + * insensitive. + * @type string $url_query_parameter + * Define the URL query parameter name to use for the parameter. It is case + * sensitive. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\SystemParameter::initOnce(); + parent::__construct($data); + } + /** + * Define the name of the parameter, such as "api_key" . It is case sensitive. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * Define the name of the parameter, such as "api_key" . It is case sensitive. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * Define the HTTP header name to use for the parameter. It is case + * insensitive. + * + * Generated from protobuf field string http_header = 2; + * @return string + */ + public function getHttpHeader() + { + return $this->http_header; + } + /** + * Define the HTTP header name to use for the parameter. It is case + * insensitive. + * + * Generated from protobuf field string http_header = 2; + * @param string $var + * @return $this + */ + public function setHttpHeader($var) + { + GPBUtil::checkString($var, True); + $this->http_header = $var; + return $this; + } + /** + * Define the URL query parameter name to use for the parameter. It is case + * sensitive. + * + * Generated from protobuf field string url_query_parameter = 3; + * @return string + */ + public function getUrlQueryParameter() + { + return $this->url_query_parameter; + } + /** + * Define the URL query parameter name to use for the parameter. It is case + * sensitive. + * + * Generated from protobuf field string url_query_parameter = 3; + * @param string $var + * @return $this + */ + public function setUrlQueryParameter($var) + { + GPBUtil::checkString($var, True); + $this->url_query_parameter = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/SystemParameterRule.php b/vendor/Gcp/google/common-protos/src/Api/SystemParameterRule.php new file mode 100644 index 00000000..cb967d20 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/SystemParameterRule.php @@ -0,0 +1,121 @@ +google.api.SystemParameterRule + */ +class SystemParameterRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * Define parameters. Multiple names may be defined for a parameter. + * For a given method call, only one of them should be used. If multiple + * names are used the behavior is implementation-dependent. + * If none of the specified names are present the behavior is + * parameter-dependent. + * + * Generated from protobuf field repeated .google.api.SystemParameter parameters = 2; + */ + private $parameters; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type array<\Google\Api\SystemParameter>|\Google\Protobuf\Internal\RepeatedField $parameters + * Define parameters. Multiple names may be defined for a parameter. + * For a given method call, only one of them should be used. If multiple + * names are used the behavior is implementation-dependent. + * If none of the specified names are present the behavior is + * parameter-dependent. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\SystemParameter::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * Define parameters. Multiple names may be defined for a parameter. + * For a given method call, only one of them should be used. If multiple + * names are used the behavior is implementation-dependent. + * If none of the specified names are present the behavior is + * parameter-dependent. + * + * Generated from protobuf field repeated .google.api.SystemParameter parameters = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getParameters() + { + return $this->parameters; + } + /** + * Define parameters. Multiple names may be defined for a parameter. + * For a given method call, only one of them should be used. If multiple + * names are used the behavior is implementation-dependent. + * If none of the specified names are present the behavior is + * parameter-dependent. + * + * Generated from protobuf field repeated .google.api.SystemParameter parameters = 2; + * @param array<\Google\Api\SystemParameter>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setParameters($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\SystemParameter::class); + $this->parameters = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/SystemParameters.php b/vendor/Gcp/google/common-protos/src/Api/SystemParameters.php new file mode 100644 index 00000000..d7a3481b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/SystemParameters.php @@ -0,0 +1,149 @@ +google.api.SystemParameters + */ +class SystemParameters extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Define system parameters. + * The parameters defined here will override the default parameters + * implemented by the system. If this field is missing from the service + * config, default system parameters will be used. Default system parameters + * and names is implementation-dependent. + * Example: define api key for all methods + * system_parameters + * rules: + * - selector: "*" + * parameters: + * - name: api_key + * url_query_parameter: api_key + * Example: define 2 api key names for a specific method. + * system_parameters + * rules: + * - selector: "/ListShelves" + * parameters: + * - name: api_key + * http_header: Api-Key1 + * - name: api_key + * http_header: Api-Key2 + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.SystemParameterRule rules = 1; + */ + private $rules; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\SystemParameterRule>|\Google\Protobuf\Internal\RepeatedField $rules + * Define system parameters. + * The parameters defined here will override the default parameters + * implemented by the system. If this field is missing from the service + * config, default system parameters will be used. Default system parameters + * and names is implementation-dependent. + * Example: define api key for all methods + * system_parameters + * rules: + * - selector: "*" + * parameters: + * - name: api_key + * url_query_parameter: api_key + * Example: define 2 api key names for a specific method. + * system_parameters + * rules: + * - selector: "/ListShelves" + * parameters: + * - name: api_key + * http_header: Api-Key1 + * - name: api_key + * http_header: Api-Key2 + * **NOTE:** All service configuration rules follow "last one wins" order. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\SystemParameter::initOnce(); + parent::__construct($data); + } + /** + * Define system parameters. + * The parameters defined here will override the default parameters + * implemented by the system. If this field is missing from the service + * config, default system parameters will be used. Default system parameters + * and names is implementation-dependent. + * Example: define api key for all methods + * system_parameters + * rules: + * - selector: "*" + * parameters: + * - name: api_key + * url_query_parameter: api_key + * Example: define 2 api key names for a specific method. + * system_parameters + * rules: + * - selector: "/ListShelves" + * parameters: + * - name: api_key + * http_header: Api-Key1 + * - name: api_key + * http_header: Api-Key2 + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.SystemParameterRule rules = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * Define system parameters. + * The parameters defined here will override the default parameters + * implemented by the system. If this field is missing from the service + * config, default system parameters will be used. Default system parameters + * and names is implementation-dependent. + * Example: define api key for all methods + * system_parameters + * rules: + * - selector: "*" + * parameters: + * - name: api_key + * url_query_parameter: api_key + * Example: define 2 api key names for a specific method. + * system_parameters + * rules: + * - selector: "/ListShelves" + * parameters: + * - name: api_key + * http_header: Api-Key1 + * - name: api_key + * http_header: Api-Key2 + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.SystemParameterRule rules = 1; + * @param array<\Google\Api\SystemParameterRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\SystemParameterRule::class); + $this->rules = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Usage.php b/vendor/Gcp/google/common-protos/src/Api/Usage.php new file mode 100644 index 00000000..e687d6fa --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Usage.php @@ -0,0 +1,179 @@ +google.api.Usage + */ +class Usage extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Requirements that must be satisfied before a consumer project can use the + * service. Each requirement is of the form /; + * for example 'serviceusage.googleapis.com/billing-enabled'. + * For Google APIs, a Terms of Service requirement must be included here. + * Google Cloud APIs must include "serviceusage.googleapis.com/tos/cloud". + * Other Google APIs should include + * "serviceusage.googleapis.com/tos/universal". Additional ToS can be + * included based on the business needs. + * + * Generated from protobuf field repeated string requirements = 1; + */ + private $requirements; + /** + * A list of usage rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.UsageRule rules = 6; + */ + private $rules; + /** + * The full resource name of a channel used for sending notifications to the + * service producer. + * Google Service Management currently only supports + * [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification + * channel. To use Google Cloud Pub/Sub as the channel, this must be the name + * of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format + * documented in https://cloud.google.com/pubsub/docs/overview. + * + * Generated from protobuf field string producer_notification_channel = 7; + */ + protected $producer_notification_channel = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array|\Google\Protobuf\Internal\RepeatedField $requirements + * Requirements that must be satisfied before a consumer project can use the + * service. Each requirement is of the form /; + * for example 'serviceusage.googleapis.com/billing-enabled'. + * For Google APIs, a Terms of Service requirement must be included here. + * Google Cloud APIs must include "serviceusage.googleapis.com/tos/cloud". + * Other Google APIs should include + * "serviceusage.googleapis.com/tos/universal". Additional ToS can be + * included based on the business needs. + * @type array<\Google\Api\UsageRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of usage rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * @type string $producer_notification_channel + * The full resource name of a channel used for sending notifications to the + * service producer. + * Google Service Management currently only supports + * [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification + * channel. To use Google Cloud Pub/Sub as the channel, this must be the name + * of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format + * documented in https://cloud.google.com/pubsub/docs/overview. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Usage::initOnce(); + parent::__construct($data); + } + /** + * Requirements that must be satisfied before a consumer project can use the + * service. Each requirement is of the form /; + * for example 'serviceusage.googleapis.com/billing-enabled'. + * For Google APIs, a Terms of Service requirement must be included here. + * Google Cloud APIs must include "serviceusage.googleapis.com/tos/cloud". + * Other Google APIs should include + * "serviceusage.googleapis.com/tos/universal". Additional ToS can be + * included based on the business needs. + * + * Generated from protobuf field repeated string requirements = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRequirements() + { + return $this->requirements; + } + /** + * Requirements that must be satisfied before a consumer project can use the + * service. Each requirement is of the form /; + * for example 'serviceusage.googleapis.com/billing-enabled'. + * For Google APIs, a Terms of Service requirement must be included here. + * Google Cloud APIs must include "serviceusage.googleapis.com/tos/cloud". + * Other Google APIs should include + * "serviceusage.googleapis.com/tos/universal". Additional ToS can be + * included based on the business needs. + * + * Generated from protobuf field repeated string requirements = 1; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRequirements($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->requirements = $arr; + return $this; + } + /** + * A list of usage rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.UsageRule rules = 6; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of usage rules that apply to individual API methods. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.UsageRule rules = 6; + * @param array<\Google\Api\UsageRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\UsageRule::class); + $this->rules = $arr; + return $this; + } + /** + * The full resource name of a channel used for sending notifications to the + * service producer. + * Google Service Management currently only supports + * [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification + * channel. To use Google Cloud Pub/Sub as the channel, this must be the name + * of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format + * documented in https://cloud.google.com/pubsub/docs/overview. + * + * Generated from protobuf field string producer_notification_channel = 7; + * @return string + */ + public function getProducerNotificationChannel() + { + return $this->producer_notification_channel; + } + /** + * The full resource name of a channel used for sending notifications to the + * service producer. + * Google Service Management currently only supports + * [Google Cloud Pub/Sub](https://cloud.google.com/pubsub) as a notification + * channel. To use Google Cloud Pub/Sub as the channel, this must be the name + * of a Cloud Pub/Sub topic that uses the Cloud Pub/Sub topic name format + * documented in https://cloud.google.com/pubsub/docs/overview. + * + * Generated from protobuf field string producer_notification_channel = 7; + * @param string $var + * @return $this + */ + public function setProducerNotificationChannel($var) + { + GPBUtil::checkString($var, True); + $this->producer_notification_channel = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/UsageRule.php b/vendor/Gcp/google/common-protos/src/Api/UsageRule.php new file mode 100644 index 00000000..28acab4e --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/UsageRule.php @@ -0,0 +1,168 @@ +google.api.UsageRule + */ +class UsageRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * If true, the selected method allows unregistered calls, e.g. calls + * that don't identify any user or application. + * + * Generated from protobuf field bool allow_unregistered_calls = 2; + */ + protected $allow_unregistered_calls = \false; + /** + * If true, the selected method should skip service control and the control + * plane features, such as quota and billing, will not be available. + * This flag is used by Google Cloud Endpoints to bypass checks for internal + * methods, such as service health check methods. + * + * Generated from protobuf field bool skip_service_control = 3; + */ + protected $skip_service_control = \false; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type bool $allow_unregistered_calls + * If true, the selected method allows unregistered calls, e.g. calls + * that don't identify any user or application. + * @type bool $skip_service_control + * If true, the selected method should skip service control and the control + * plane features, such as quota and billing, will not be available. + * This flag is used by Google Cloud Endpoints to bypass checks for internal + * methods, such as service health check methods. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Usage::initOnce(); + parent::__construct($data); + } + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects the methods to which this rule applies. Use '*' to indicate all + * methods in all APIs. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * If true, the selected method allows unregistered calls, e.g. calls + * that don't identify any user or application. + * + * Generated from protobuf field bool allow_unregistered_calls = 2; + * @return bool + */ + public function getAllowUnregisteredCalls() + { + return $this->allow_unregistered_calls; + } + /** + * If true, the selected method allows unregistered calls, e.g. calls + * that don't identify any user or application. + * + * Generated from protobuf field bool allow_unregistered_calls = 2; + * @param bool $var + * @return $this + */ + public function setAllowUnregisteredCalls($var) + { + GPBUtil::checkBool($var); + $this->allow_unregistered_calls = $var; + return $this; + } + /** + * If true, the selected method should skip service control and the control + * plane features, such as quota and billing, will not be available. + * This flag is used by Google Cloud Endpoints to bypass checks for internal + * methods, such as service health check methods. + * + * Generated from protobuf field bool skip_service_control = 3; + * @return bool + */ + public function getSkipServiceControl() + { + return $this->skip_service_control; + } + /** + * If true, the selected method should skip service control and the control + * plane features, such as quota and billing, will not be available. + * This flag is used by Google Cloud Endpoints to bypass checks for internal + * methods, such as service health check methods. + * + * Generated from protobuf field bool skip_service_control = 3; + * @param bool $var + * @return $this + */ + public function setSkipServiceControl($var) + { + GPBUtil::checkBool($var); + $this->skip_service_control = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/Visibility.php b/vendor/Gcp/google/common-protos/src/Api/Visibility.php new file mode 100644 index 00000000..68cb301d --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/Visibility.php @@ -0,0 +1,82 @@ +google.api.Visibility + */ +class Visibility extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of visibility rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.VisibilityRule rules = 1; + */ + private $rules; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Api\VisibilityRule>|\Google\Protobuf\Internal\RepeatedField $rules + * A list of visibility rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Visibility::initOnce(); + parent::__construct($data); + } + /** + * A list of visibility rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.VisibilityRule rules = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRules() + { + return $this->rules; + } + /** + * A list of visibility rules that apply to individual API elements. + * **NOTE:** All service configuration rules follow "last one wins" order. + * + * Generated from protobuf field repeated .google.api.VisibilityRule rules = 1; + * @param array<\Google\Api\VisibilityRule>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRules($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Api\VisibilityRule::class); + $this->rules = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Api/VisibilityRule.php b/vendor/Gcp/google/common-protos/src/Api/VisibilityRule.php new file mode 100644 index 00000000..7601f96a --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Api/VisibilityRule.php @@ -0,0 +1,141 @@ +google.api.VisibilityRule + */ +class VisibilityRule extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Selects methods, messages, fields, enums, etc. to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + */ + protected $selector = ''; + /** + * A comma-separated list of visibility labels that apply to the `selector`. + * Any of the listed labels can be used to grant the visibility. + * If a rule has multiple labels, removing one of the labels but not all of + * them can break clients. + * Example: + * visibility: + * rules: + * - selector: google.calendar.Calendar.EnhancedSearch + * restriction: INTERNAL, PREVIEW + * Removing INTERNAL from this restriction will break clients that rely on + * this method and only had access to it through INTERNAL. + * + * Generated from protobuf field string restriction = 2; + */ + protected $restriction = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $selector + * Selects methods, messages, fields, enums, etc. to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * @type string $restriction + * A comma-separated list of visibility labels that apply to the `selector`. + * Any of the listed labels can be used to grant the visibility. + * If a rule has multiple labels, removing one of the labels but not all of + * them can break clients. + * Example: + * visibility: + * rules: + * - selector: google.calendar.Calendar.EnhancedSearch + * restriction: INTERNAL, PREVIEW + * Removing INTERNAL from this restriction will break clients that rely on + * this method and only had access to it through INTERNAL. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Api\Visibility::initOnce(); + parent::__construct($data); + } + /** + * Selects methods, messages, fields, enums, etc. to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @return string + */ + public function getSelector() + { + return $this->selector; + } + /** + * Selects methods, messages, fields, enums, etc. to which this rule applies. + * Refer to [selector][google.api.DocumentationRule.selector] for syntax + * details. + * + * Generated from protobuf field string selector = 1; + * @param string $var + * @return $this + */ + public function setSelector($var) + { + GPBUtil::checkString($var, True); + $this->selector = $var; + return $this; + } + /** + * A comma-separated list of visibility labels that apply to the `selector`. + * Any of the listed labels can be used to grant the visibility. + * If a rule has multiple labels, removing one of the labels but not all of + * them can break clients. + * Example: + * visibility: + * rules: + * - selector: google.calendar.Calendar.EnhancedSearch + * restriction: INTERNAL, PREVIEW + * Removing INTERNAL from this restriction will break clients that rely on + * this method and only had access to it through INTERNAL. + * + * Generated from protobuf field string restriction = 2; + * @return string + */ + public function getRestriction() + { + return $this->restriction; + } + /** + * A comma-separated list of visibility labels that apply to the `selector`. + * Any of the listed labels can be used to grant the visibility. + * If a rule has multiple labels, removing one of the labels but not all of + * them can break clients. + * Example: + * visibility: + * rules: + * - selector: google.calendar.Calendar.EnhancedSearch + * restriction: INTERNAL, PREVIEW + * Removing INTERNAL from this restriction will break clients that rely on + * this method and only had access to it through INTERNAL. + * + * Generated from protobuf field string restriction = 2; + * @param string $var + * @return $this + */ + public function setRestriction($var) + { + GPBUtil::checkString($var, True); + $this->restriction = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php new file mode 100644 index 00000000..a933e12c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfig.php @@ -0,0 +1,146 @@ +google.iam.v1.AuditConfig + */ +class AuditConfig extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Specifies a service that will be enabled for audit logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * + * Generated from protobuf field string service = 1; + */ + protected $service = ''; + /** + * The configuration for logging of each type of permission. + * + * Generated from protobuf field repeated .google.iam.v1.AuditLogConfig audit_log_configs = 3; + */ + private $audit_log_configs; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $service + * Specifies a service that will be enabled for audit logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * @type array<\Google\Cloud\Iam\V1\AuditLogConfig>|\Google\Protobuf\Internal\RepeatedField $audit_log_configs + * The configuration for logging of each type of permission. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * Specifies a service that will be enabled for audit logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * + * Generated from protobuf field string service = 1; + * @return string + */ + public function getService() + { + return $this->service; + } + /** + * Specifies a service that will be enabled for audit logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * + * Generated from protobuf field string service = 1; + * @param string $var + * @return $this + */ + public function setService($var) + { + GPBUtil::checkString($var, True); + $this->service = $var; + return $this; + } + /** + * The configuration for logging of each type of permission. + * + * Generated from protobuf field repeated .google.iam.v1.AuditLogConfig audit_log_configs = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAuditLogConfigs() + { + return $this->audit_log_configs; + } + /** + * The configuration for logging of each type of permission. + * + * Generated from protobuf field repeated .google.iam.v1.AuditLogConfig audit_log_configs = 3; + * @param array<\Google\Cloud\Iam\V1\AuditLogConfig>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAuditLogConfigs($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\AuditLogConfig::class); + $this->audit_log_configs = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php new file mode 100644 index 00000000..7d2e6e57 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta.php @@ -0,0 +1,187 @@ +google.iam.v1.AuditConfigDelta + */ +class AuditConfigDelta extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The action that was performed on an audit configuration in a policy. + * Required + * + * Generated from protobuf field .google.iam.v1.AuditConfigDelta.Action action = 1; + */ + protected $action = 0; + /** + * Specifies a service that was configured for Cloud Audit Logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * Required + * + * Generated from protobuf field string service = 2; + */ + protected $service = ''; + /** + * A single identity that is exempted from "data access" audit + * logging for the `service` specified above. + * Follows the same format of Binding.members. + * + * Generated from protobuf field string exempted_member = 3; + */ + protected $exempted_member = ''; + /** + * Specifies the log_type that was be enabled. ADMIN_ACTIVITY is always + * enabled, and cannot be configured. + * Required + * + * Generated from protobuf field string log_type = 4; + */ + protected $log_type = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $action + * The action that was performed on an audit configuration in a policy. + * Required + * @type string $service + * Specifies a service that was configured for Cloud Audit Logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * Required + * @type string $exempted_member + * A single identity that is exempted from "data access" audit + * logging for the `service` specified above. + * Follows the same format of Binding.members. + * @type string $log_type + * Specifies the log_type that was be enabled. ADMIN_ACTIVITY is always + * enabled, and cannot be configured. + * Required + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * The action that was performed on an audit configuration in a policy. + * Required + * + * Generated from protobuf field .google.iam.v1.AuditConfigDelta.Action action = 1; + * @return int + */ + public function getAction() + { + return $this->action; + } + /** + * The action that was performed on an audit configuration in a policy. + * Required + * + * Generated from protobuf field .google.iam.v1.AuditConfigDelta.Action action = 1; + * @param int $var + * @return $this + */ + public function setAction($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\AuditConfigDelta\Action::class); + $this->action = $var; + return $this; + } + /** + * Specifies a service that was configured for Cloud Audit Logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * Required + * + * Generated from protobuf field string service = 2; + * @return string + */ + public function getService() + { + return $this->service; + } + /** + * Specifies a service that was configured for Cloud Audit Logging. + * For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + * `allServices` is a special value that covers all services. + * Required + * + * Generated from protobuf field string service = 2; + * @param string $var + * @return $this + */ + public function setService($var) + { + GPBUtil::checkString($var, True); + $this->service = $var; + return $this; + } + /** + * A single identity that is exempted from "data access" audit + * logging for the `service` specified above. + * Follows the same format of Binding.members. + * + * Generated from protobuf field string exempted_member = 3; + * @return string + */ + public function getExemptedMember() + { + return $this->exempted_member; + } + /** + * A single identity that is exempted from "data access" audit + * logging for the `service` specified above. + * Follows the same format of Binding.members. + * + * Generated from protobuf field string exempted_member = 3; + * @param string $var + * @return $this + */ + public function setExemptedMember($var) + { + GPBUtil::checkString($var, True); + $this->exempted_member = $var; + return $this; + } + /** + * Specifies the log_type that was be enabled. ADMIN_ACTIVITY is always + * enabled, and cannot be configured. + * Required + * + * Generated from protobuf field string log_type = 4; + * @return string + */ + public function getLogType() + { + return $this->log_type; + } + /** + * Specifies the log_type that was be enabled. ADMIN_ACTIVITY is always + * enabled, and cannot be configured. + * Required + * + * Generated from protobuf field string log_type = 4; + * @param string $var + * @return $this + */ + public function setLogType($var) + { + GPBUtil::checkString($var, True); + $this->log_type = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php new file mode 100644 index 00000000..e218dbb2 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditConfigDelta/Action.php @@ -0,0 +1,49 @@ +google.iam.v1.AuditConfigDelta.Action + */ +class Action +{ + /** + * Unspecified. + * + * Generated from protobuf enum ACTION_UNSPECIFIED = 0; + */ + const ACTION_UNSPECIFIED = 0; + /** + * Addition of an audit configuration. + * + * Generated from protobuf enum ADD = 1; + */ + const ADD = 1; + /** + * Removal of an audit configuration. + * + * Generated from protobuf enum REMOVE = 2; + */ + const REMOVE = 2; + private static $valueToName = [self::ACTION_UNSPECIFIED => 'ACTION_UNSPECIFIED', self::ADD => 'ADD', self::REMOVE => 'REMOVE']; + 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/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php new file mode 100644 index 00000000..58ec6ffb --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig.php @@ -0,0 +1,120 @@ +google.iam.v1.AuditLogConfig + */ +class AuditLogConfig extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The log type that this config enables. + * + * Generated from protobuf field .google.iam.v1.AuditLogConfig.LogType log_type = 1; + */ + protected $log_type = 0; + /** + * Specifies the identities that do not cause logging for this type of + * permission. + * Follows the same format of + * [Binding.members][google.iam.v1.Binding.members]. + * + * Generated from protobuf field repeated string exempted_members = 2; + */ + private $exempted_members; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $log_type + * The log type that this config enables. + * @type array|\Google\Protobuf\Internal\RepeatedField $exempted_members + * Specifies the identities that do not cause logging for this type of + * permission. + * Follows the same format of + * [Binding.members][google.iam.v1.Binding.members]. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * The log type that this config enables. + * + * Generated from protobuf field .google.iam.v1.AuditLogConfig.LogType log_type = 1; + * @return int + */ + public function getLogType() + { + return $this->log_type; + } + /** + * The log type that this config enables. + * + * Generated from protobuf field .google.iam.v1.AuditLogConfig.LogType log_type = 1; + * @param int $var + * @return $this + */ + public function setLogType($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\AuditLogConfig\LogType::class); + $this->log_type = $var; + return $this; + } + /** + * Specifies the identities that do not cause logging for this type of + * permission. + * Follows the same format of + * [Binding.members][google.iam.v1.Binding.members]. + * + * Generated from protobuf field repeated string exempted_members = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getExemptedMembers() + { + return $this->exempted_members; + } + /** + * Specifies the identities that do not cause logging for this type of + * permission. + * Follows the same format of + * [Binding.members][google.iam.v1.Binding.members]. + * + * Generated from protobuf field repeated string exempted_members = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setExemptedMembers($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->exempted_members = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php new file mode 100644 index 00000000..4c8f8dea --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/AuditLogConfig/LogType.php @@ -0,0 +1,56 @@ +google.iam.v1.AuditLogConfig.LogType + */ +class LogType +{ + /** + * Default case. Should never be this. + * + * Generated from protobuf enum LOG_TYPE_UNSPECIFIED = 0; + */ + const LOG_TYPE_UNSPECIFIED = 0; + /** + * Admin reads. Example: CloudIAM getIamPolicy + * + * Generated from protobuf enum ADMIN_READ = 1; + */ + const ADMIN_READ = 1; + /** + * Data writes. Example: CloudSQL Users create + * + * Generated from protobuf enum DATA_WRITE = 2; + */ + const DATA_WRITE = 2; + /** + * Data reads. Example: CloudSQL Users list + * + * Generated from protobuf enum DATA_READ = 3; + */ + const DATA_READ = 3; + private static $valueToName = [self::LOG_TYPE_UNSPECIFIED => 'LOG_TYPE_UNSPECIFIED', self::ADMIN_READ => 'ADMIN_READ', self::DATA_WRITE => 'DATA_WRITE', self::DATA_READ => 'DATA_READ']; + 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/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Binding.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Binding.php new file mode 100644 index 00000000..641d34ef --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Binding.php @@ -0,0 +1,287 @@ +google.iam.v1.Binding + */ +class Binding extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Role that is assigned to the list of `members`, or principals. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * + * Generated from protobuf field string role = 1; + */ + protected $role = ''; + /** + * Specifies the principals requesting access for a Google Cloud resource. + * `members` can have the following values: + * * `allUsers`: A special identifier that represents anyone who is + * on the internet; with or without a Google account. + * * `allAuthenticatedUsers`: A special identifier that represents anyone + * who is authenticated with a Google account or a service account. + * * `user:{emailid}`: An email address that represents a specific Google + * account. For example, `alice@example.com` . + * * `serviceAccount:{emailid}`: An email address that represents a service + * account. For example, `my-other-app@appspot.gserviceaccount.com`. + * * `group:{emailid}`: An email address that represents a Google group. + * For example, `admins@example.com`. + * * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a user that has been recently deleted. For + * example, `alice@example.com?uid=123456789012345678901`. If the user is + * recovered, this value reverts to `user:{emailid}` and the recovered user + * retains the role in the binding. + * * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus + * unique identifier) representing a service account that has been recently + * deleted. For example, + * `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + * If the service account is undeleted, this value reverts to + * `serviceAccount:{emailid}` and the undeleted service account retains the + * role in the binding. + * * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a Google group that has been recently + * deleted. For example, `admins@example.com?uid=123456789012345678901`. If + * the group is recovered, this value reverts to `group:{emailid}` and the + * recovered group retains the role in the binding. + * * `domain:{domain}`: The G Suite domain (primary) that represents all the + * users of that domain. For example, `google.com` or `example.com`. + * + * Generated from protobuf field repeated string members = 2; + */ + private $members; + /** + * The condition that is associated with this binding. + * If the condition evaluates to `true`, then this binding applies to the + * current request. + * If the condition evaluates to `false`, then this binding does not apply to + * the current request. However, a different role binding might grant the same + * role to one or more of the principals in this binding. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field .google.type.Expr condition = 3; + */ + protected $condition = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $role + * Role that is assigned to the list of `members`, or principals. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * @type array|\Google\Protobuf\Internal\RepeatedField $members + * Specifies the principals requesting access for a Google Cloud resource. + * `members` can have the following values: + * * `allUsers`: A special identifier that represents anyone who is + * on the internet; with or without a Google account. + * * `allAuthenticatedUsers`: A special identifier that represents anyone + * who is authenticated with a Google account or a service account. + * * `user:{emailid}`: An email address that represents a specific Google + * account. For example, `alice@example.com` . + * * `serviceAccount:{emailid}`: An email address that represents a service + * account. For example, `my-other-app@appspot.gserviceaccount.com`. + * * `group:{emailid}`: An email address that represents a Google group. + * For example, `admins@example.com`. + * * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a user that has been recently deleted. For + * example, `alice@example.com?uid=123456789012345678901`. If the user is + * recovered, this value reverts to `user:{emailid}` and the recovered user + * retains the role in the binding. + * * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus + * unique identifier) representing a service account that has been recently + * deleted. For example, + * `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + * If the service account is undeleted, this value reverts to + * `serviceAccount:{emailid}` and the undeleted service account retains the + * role in the binding. + * * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a Google group that has been recently + * deleted. For example, `admins@example.com?uid=123456789012345678901`. If + * the group is recovered, this value reverts to `group:{emailid}` and the + * recovered group retains the role in the binding. + * * `domain:{domain}`: The G Suite domain (primary) that represents all the + * users of that domain. For example, `google.com` or `example.com`. + * @type \Google\Type\Expr $condition + * The condition that is associated with this binding. + * If the condition evaluates to `true`, then this binding applies to the + * current request. + * If the condition evaluates to `false`, then this binding does not apply to + * the current request. However, a different role binding might grant the same + * role to one or more of the principals in this binding. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * Role that is assigned to the list of `members`, or principals. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * + * Generated from protobuf field string role = 1; + * @return string + */ + public function getRole() + { + return $this->role; + } + /** + * Role that is assigned to the list of `members`, or principals. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * + * Generated from protobuf field string role = 1; + * @param string $var + * @return $this + */ + public function setRole($var) + { + GPBUtil::checkString($var, True); + $this->role = $var; + return $this; + } + /** + * Specifies the principals requesting access for a Google Cloud resource. + * `members` can have the following values: + * * `allUsers`: A special identifier that represents anyone who is + * on the internet; with or without a Google account. + * * `allAuthenticatedUsers`: A special identifier that represents anyone + * who is authenticated with a Google account or a service account. + * * `user:{emailid}`: An email address that represents a specific Google + * account. For example, `alice@example.com` . + * * `serviceAccount:{emailid}`: An email address that represents a service + * account. For example, `my-other-app@appspot.gserviceaccount.com`. + * * `group:{emailid}`: An email address that represents a Google group. + * For example, `admins@example.com`. + * * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a user that has been recently deleted. For + * example, `alice@example.com?uid=123456789012345678901`. If the user is + * recovered, this value reverts to `user:{emailid}` and the recovered user + * retains the role in the binding. + * * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus + * unique identifier) representing a service account that has been recently + * deleted. For example, + * `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + * If the service account is undeleted, this value reverts to + * `serviceAccount:{emailid}` and the undeleted service account retains the + * role in the binding. + * * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a Google group that has been recently + * deleted. For example, `admins@example.com?uid=123456789012345678901`. If + * the group is recovered, this value reverts to `group:{emailid}` and the + * recovered group retains the role in the binding. + * * `domain:{domain}`: The G Suite domain (primary) that represents all the + * users of that domain. For example, `google.com` or `example.com`. + * + * Generated from protobuf field repeated string members = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getMembers() + { + return $this->members; + } + /** + * Specifies the principals requesting access for a Google Cloud resource. + * `members` can have the following values: + * * `allUsers`: A special identifier that represents anyone who is + * on the internet; with or without a Google account. + * * `allAuthenticatedUsers`: A special identifier that represents anyone + * who is authenticated with a Google account or a service account. + * * `user:{emailid}`: An email address that represents a specific Google + * account. For example, `alice@example.com` . + * * `serviceAccount:{emailid}`: An email address that represents a service + * account. For example, `my-other-app@appspot.gserviceaccount.com`. + * * `group:{emailid}`: An email address that represents a Google group. + * For example, `admins@example.com`. + * * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a user that has been recently deleted. For + * example, `alice@example.com?uid=123456789012345678901`. If the user is + * recovered, this value reverts to `user:{emailid}` and the recovered user + * retains the role in the binding. + * * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus + * unique identifier) representing a service account that has been recently + * deleted. For example, + * `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + * If the service account is undeleted, this value reverts to + * `serviceAccount:{emailid}` and the undeleted service account retains the + * role in the binding. + * * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique + * identifier) representing a Google group that has been recently + * deleted. For example, `admins@example.com?uid=123456789012345678901`. If + * the group is recovered, this value reverts to `group:{emailid}` and the + * recovered group retains the role in the binding. + * * `domain:{domain}`: The G Suite domain (primary) that represents all the + * users of that domain. For example, `google.com` or `example.com`. + * + * Generated from protobuf field repeated string members = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setMembers($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->members = $arr; + return $this; + } + /** + * The condition that is associated with this binding. + * If the condition evaluates to `true`, then this binding applies to the + * current request. + * If the condition evaluates to `false`, then this binding does not apply to + * the current request. However, a different role binding might grant the same + * role to one or more of the principals in this binding. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field .google.type.Expr condition = 3; + * @return \Google\Type\Expr|null + */ + public function getCondition() + { + return $this->condition; + } + public function hasCondition() + { + return isset($this->condition); + } + public function clearCondition() + { + unset($this->condition); + } + /** + * The condition that is associated with this binding. + * If the condition evaluates to `true`, then this binding applies to the + * current request. + * If the condition evaluates to `false`, then this binding does not apply to + * the current request. However, a different role binding might grant the same + * role to one or more of the principals in this binding. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field .google.type.Expr condition = 3; + * @param \Google\Type\Expr $var + * @return $this + */ + public function setCondition($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Type\Expr::class); + $this->condition = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php new file mode 100644 index 00000000..1d204e98 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta.php @@ -0,0 +1,183 @@ +google.iam.v1.BindingDelta + */ +class BindingDelta extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The action that was performed on a Binding. + * Required + * + * Generated from protobuf field .google.iam.v1.BindingDelta.Action action = 1; + */ + protected $action = 0; + /** + * Role that is assigned to `members`. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * Required + * + * Generated from protobuf field string role = 2; + */ + protected $role = ''; + /** + * A single identity requesting access for a Google Cloud resource. + * Follows the same format of Binding.members. + * Required + * + * Generated from protobuf field string member = 3; + */ + protected $member = ''; + /** + * The condition that is associated with this binding. + * + * Generated from protobuf field .google.type.Expr condition = 4; + */ + protected $condition = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $action + * The action that was performed on a Binding. + * Required + * @type string $role + * Role that is assigned to `members`. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * Required + * @type string $member + * A single identity requesting access for a Google Cloud resource. + * Follows the same format of Binding.members. + * Required + * @type \Google\Type\Expr $condition + * The condition that is associated with this binding. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * The action that was performed on a Binding. + * Required + * + * Generated from protobuf field .google.iam.v1.BindingDelta.Action action = 1; + * @return int + */ + public function getAction() + { + return $this->action; + } + /** + * The action that was performed on a Binding. + * Required + * + * Generated from protobuf field .google.iam.v1.BindingDelta.Action action = 1; + * @param int $var + * @return $this + */ + public function setAction($var) + { + GPBUtil::checkEnum($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\BindingDelta\Action::class); + $this->action = $var; + return $this; + } + /** + * Role that is assigned to `members`. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * Required + * + * Generated from protobuf field string role = 2; + * @return string + */ + public function getRole() + { + return $this->role; + } + /** + * Role that is assigned to `members`. + * For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + * Required + * + * Generated from protobuf field string role = 2; + * @param string $var + * @return $this + */ + public function setRole($var) + { + GPBUtil::checkString($var, True); + $this->role = $var; + return $this; + } + /** + * A single identity requesting access for a Google Cloud resource. + * Follows the same format of Binding.members. + * Required + * + * Generated from protobuf field string member = 3; + * @return string + */ + public function getMember() + { + return $this->member; + } + /** + * A single identity requesting access for a Google Cloud resource. + * Follows the same format of Binding.members. + * Required + * + * Generated from protobuf field string member = 3; + * @param string $var + * @return $this + */ + public function setMember($var) + { + GPBUtil::checkString($var, True); + $this->member = $var; + return $this; + } + /** + * The condition that is associated with this binding. + * + * Generated from protobuf field .google.type.Expr condition = 4; + * @return \Google\Type\Expr|null + */ + public function getCondition() + { + return $this->condition; + } + public function hasCondition() + { + return isset($this->condition); + } + public function clearCondition() + { + unset($this->condition); + } + /** + * The condition that is associated with this binding. + * + * Generated from protobuf field .google.type.Expr condition = 4; + * @param \Google\Type\Expr $var + * @return $this + */ + public function setCondition($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Type\Expr::class); + $this->condition = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php new file mode 100644 index 00000000..9d0df49c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/BindingDelta/Action.php @@ -0,0 +1,49 @@ +google.iam.v1.BindingDelta.Action + */ +class Action +{ + /** + * Unspecified. + * + * Generated from protobuf enum ACTION_UNSPECIFIED = 0; + */ + const ACTION_UNSPECIFIED = 0; + /** + * Addition of a Binding. + * + * Generated from protobuf enum ADD = 1; + */ + const ADD = 1; + /** + * Removal of a Binding. + * + * Generated from protobuf enum REMOVE = 2; + */ + const REMOVE = 2; + private static $valueToName = [self::ACTION_UNSPECIFIED => 'ACTION_UNSPECIFIED', self::ADD => 'ADD', self::REMOVE => 'REMOVE']; + 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/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php new file mode 100644 index 00000000..ff2b6b14 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetIamPolicyRequest.php @@ -0,0 +1,108 @@ +google.iam.v1.GetIamPolicyRequest + */ +class GetIamPolicyRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * REQUIRED: The resource for which the policy is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $resource = ''; + /** + * OPTIONAL: A `GetPolicyOptions` object for specifying options to + * `GetIamPolicy`. + * + * Generated from protobuf field .google.iam.v1.GetPolicyOptions options = 2; + */ + protected $options = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $resource + * REQUIRED: The resource for which the policy is being requested. + * See the operation documentation for the appropriate value for this field. + * @type \Google\Cloud\Iam\V1\GetPolicyOptions $options + * OPTIONAL: A `GetPolicyOptions` object for specifying options to + * `GetIamPolicy`. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\IamPolicy::initOnce(); + parent::__construct($data); + } + /** + * REQUIRED: The resource for which the policy is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getResource() + { + return $this->resource; + } + /** + * REQUIRED: The resource for which the policy is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setResource($var) + { + GPBUtil::checkString($var, True); + $this->resource = $var; + return $this; + } + /** + * OPTIONAL: A `GetPolicyOptions` object for specifying options to + * `GetIamPolicy`. + * + * Generated from protobuf field .google.iam.v1.GetPolicyOptions options = 2; + * @return \Google\Cloud\Iam\V1\GetPolicyOptions|null + */ + public function getOptions() + { + return $this->options; + } + public function hasOptions() + { + return isset($this->options); + } + public function clearOptions() + { + unset($this->options); + } + /** + * OPTIONAL: A `GetPolicyOptions` object for specifying options to + * `GetIamPolicy`. + * + * Generated from protobuf field .google.iam.v1.GetPolicyOptions options = 2; + * @param \Google\Cloud\Iam\V1\GetPolicyOptions $var + * @return $this + */ + public function setOptions($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\GetPolicyOptions::class); + $this->options = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php new file mode 100644 index 00000000..caa3b0b4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/GetPolicyOptions.php @@ -0,0 +1,113 @@ +google.iam.v1.GetPolicyOptions + */ +class GetPolicyOptions extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Optional. The maximum policy version that will be used to format the + * policy. + * Valid values are 0, 1, and 3. Requests specifying an invalid value will be + * rejected. + * Requests for policies with any conditional role bindings must specify + * version 3. Policies with no conditional role bindings may specify any valid + * value or leave the field unset. + * The policy in the response might use the policy version that you specified, + * or it might use a lower policy version. For example, if you specify version + * 3, but the policy has no conditional role bindings, the response uses + * version 1. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 requested_policy_version = 1; + */ + protected $requested_policy_version = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $requested_policy_version + * Optional. The maximum policy version that will be used to format the + * policy. + * Valid values are 0, 1, and 3. Requests specifying an invalid value will be + * rejected. + * Requests for policies with any conditional role bindings must specify + * version 3. Policies with no conditional role bindings may specify any valid + * value or leave the field unset. + * The policy in the response might use the policy version that you specified, + * or it might use a lower policy version. For example, if you specify version + * 3, but the policy has no conditional role bindings, the response uses + * version 1. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Options::initOnce(); + parent::__construct($data); + } + /** + * Optional. The maximum policy version that will be used to format the + * policy. + * Valid values are 0, 1, and 3. Requests specifying an invalid value will be + * rejected. + * Requests for policies with any conditional role bindings must specify + * version 3. Policies with no conditional role bindings may specify any valid + * value or leave the field unset. + * The policy in the response might use the policy version that you specified, + * or it might use a lower policy version. For example, if you specify version + * 3, but the policy has no conditional role bindings, the response uses + * version 1. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 requested_policy_version = 1; + * @return int + */ + public function getRequestedPolicyVersion() + { + return $this->requested_policy_version; + } + /** + * Optional. The maximum policy version that will be used to format the + * policy. + * Valid values are 0, 1, and 3. Requests specifying an invalid value will be + * rejected. + * Requests for policies with any conditional role bindings must specify + * version 3. Policies with no conditional role bindings may specify any valid + * value or leave the field unset. + * The policy in the response might use the policy version that you specified, + * or it might use a lower policy version. For example, if you specify version + * 3, but the policy has no conditional role bindings, the response uses + * version 1. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 requested_policy_version = 1; + * @param int $var + * @return $this + */ + public function setRequestedPolicyVersion($var) + { + GPBUtil::checkInt32($var); + $this->requested_policy_version = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Policy.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Policy.php new file mode 100644 index 00000000..a3a69426 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/Policy.php @@ -0,0 +1,362 @@ +google.iam.v1.Policy + */ +class Policy extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Specifies the format of the policy. + * Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + * are rejected. + * Any operation that affects conditional role bindings must specify version + * `3`. This requirement applies to the following operations: + * * Getting a policy that includes a conditional role binding + * * Adding a conditional role binding to a policy + * * Changing a conditional role binding in a policy + * * Removing any role binding, with or without a condition, from a policy + * that includes conditions + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * If a policy does not include any conditions, operations on that policy may + * specify any valid version or leave the field unset. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 version = 1; + */ + protected $version = 0; + /** + * Associates a list of `members`, or principals, with a `role`. Optionally, + * may specify a `condition` that determines how and when the `bindings` are + * applied. Each of the `bindings` must contain at least one principal. + * The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 + * of these principals can be Google groups. Each occurrence of a principal + * counts towards these limits. For example, if the `bindings` grant 50 + * different roles to `user:alice@example.com`, and not to any other + * principal, then you can add another 1,450 principals to the `bindings` in + * the `Policy`. + * + * Generated from protobuf field repeated .google.iam.v1.Binding bindings = 4; + */ + private $bindings; + /** + * Specifies cloud audit logging configuration for this policy. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfig audit_configs = 6; + */ + private $audit_configs; + /** + * `etag` is used for optimistic concurrency control as a way to help + * prevent simultaneous updates of a policy from overwriting each other. + * It is strongly suggested that systems make use of the `etag` in the + * read-modify-write cycle to perform policy updates in order to avoid race + * conditions: An `etag` is returned in the response to `getIamPolicy`, and + * systems are expected to put that etag in the request to `setIamPolicy` to + * ensure that their change will be applied to the same version of the policy. + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * + * Generated from protobuf field bytes etag = 3; + */ + protected $etag = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $version + * Specifies the format of the policy. + * Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + * are rejected. + * Any operation that affects conditional role bindings must specify version + * `3`. This requirement applies to the following operations: + * * Getting a policy that includes a conditional role binding + * * Adding a conditional role binding to a policy + * * Changing a conditional role binding in a policy + * * Removing any role binding, with or without a condition, from a policy + * that includes conditions + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * If a policy does not include any conditions, operations on that policy may + * specify any valid version or leave the field unset. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * @type array<\Google\Cloud\Iam\V1\Binding>|\Google\Protobuf\Internal\RepeatedField $bindings + * Associates a list of `members`, or principals, with a `role`. Optionally, + * may specify a `condition` that determines how and when the `bindings` are + * applied. Each of the `bindings` must contain at least one principal. + * The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 + * of these principals can be Google groups. Each occurrence of a principal + * counts towards these limits. For example, if the `bindings` grant 50 + * different roles to `user:alice@example.com`, and not to any other + * principal, then you can add another 1,450 principals to the `bindings` in + * the `Policy`. + * @type array<\Google\Cloud\Iam\V1\AuditConfig>|\Google\Protobuf\Internal\RepeatedField $audit_configs + * Specifies cloud audit logging configuration for this policy. + * @type string $etag + * `etag` is used for optimistic concurrency control as a way to help + * prevent simultaneous updates of a policy from overwriting each other. + * It is strongly suggested that systems make use of the `etag` in the + * read-modify-write cycle to perform policy updates in order to avoid race + * conditions: An `etag` is returned in the response to `getIamPolicy`, and + * systems are expected to put that etag in the request to `setIamPolicy` to + * ensure that their change will be applied to the same version of the policy. + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * Specifies the format of the policy. + * Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + * are rejected. + * Any operation that affects conditional role bindings must specify version + * `3`. This requirement applies to the following operations: + * * Getting a policy that includes a conditional role binding + * * Adding a conditional role binding to a policy + * * Changing a conditional role binding in a policy + * * Removing any role binding, with or without a condition, from a policy + * that includes conditions + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * If a policy does not include any conditions, operations on that policy may + * specify any valid version or leave the field unset. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 version = 1; + * @return int + */ + public function getVersion() + { + return $this->version; + } + /** + * Specifies the format of the policy. + * Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + * are rejected. + * Any operation that affects conditional role bindings must specify version + * `3`. This requirement applies to the following operations: + * * Getting a policy that includes a conditional role binding + * * Adding a conditional role binding to a policy + * * Changing a conditional role binding in a policy + * * Removing any role binding, with or without a condition, from a policy + * that includes conditions + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * If a policy does not include any conditions, operations on that policy may + * specify any valid version or leave the field unset. + * To learn which resources support conditions in their IAM policies, see the + * [IAM + * documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * + * Generated from protobuf field int32 version = 1; + * @param int $var + * @return $this + */ + public function setVersion($var) + { + GPBUtil::checkInt32($var); + $this->version = $var; + return $this; + } + /** + * Associates a list of `members`, or principals, with a `role`. Optionally, + * may specify a `condition` that determines how and when the `bindings` are + * applied. Each of the `bindings` must contain at least one principal. + * The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 + * of these principals can be Google groups. Each occurrence of a principal + * counts towards these limits. For example, if the `bindings` grant 50 + * different roles to `user:alice@example.com`, and not to any other + * principal, then you can add another 1,450 principals to the `bindings` in + * the `Policy`. + * + * Generated from protobuf field repeated .google.iam.v1.Binding bindings = 4; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getBindings() + { + return $this->bindings; + } + /** + * Associates a list of `members`, or principals, with a `role`. Optionally, + * may specify a `condition` that determines how and when the `bindings` are + * applied. Each of the `bindings` must contain at least one principal. + * The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 + * of these principals can be Google groups. Each occurrence of a principal + * counts towards these limits. For example, if the `bindings` grant 50 + * different roles to `user:alice@example.com`, and not to any other + * principal, then you can add another 1,450 principals to the `bindings` in + * the `Policy`. + * + * Generated from protobuf field repeated .google.iam.v1.Binding bindings = 4; + * @param array<\Google\Cloud\Iam\V1\Binding>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setBindings($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\Binding::class); + $this->bindings = $arr; + return $this; + } + /** + * Specifies cloud audit logging configuration for this policy. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfig audit_configs = 6; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAuditConfigs() + { + return $this->audit_configs; + } + /** + * Specifies cloud audit logging configuration for this policy. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfig audit_configs = 6; + * @param array<\Google\Cloud\Iam\V1\AuditConfig>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAuditConfigs($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\AuditConfig::class); + $this->audit_configs = $arr; + return $this; + } + /** + * `etag` is used for optimistic concurrency control as a way to help + * prevent simultaneous updates of a policy from overwriting each other. + * It is strongly suggested that systems make use of the `etag` in the + * read-modify-write cycle to perform policy updates in order to avoid race + * conditions: An `etag` is returned in the response to `getIamPolicy`, and + * systems are expected to put that etag in the request to `setIamPolicy` to + * ensure that their change will be applied to the same version of the policy. + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * + * Generated from protobuf field bytes etag = 3; + * @return string + */ + public function getEtag() + { + return $this->etag; + } + /** + * `etag` is used for optimistic concurrency control as a way to help + * prevent simultaneous updates of a policy from overwriting each other. + * It is strongly suggested that systems make use of the `etag` in the + * read-modify-write cycle to perform policy updates in order to avoid race + * conditions: An `etag` is returned in the response to `getIamPolicy`, and + * systems are expected to put that etag in the request to `setIamPolicy` to + * ensure that their change will be applied to the same version of the policy. + * **Important:** If you use IAM Conditions, you must include the `etag` field + * whenever you call `setIamPolicy`. If you omit this field, then IAM allows + * you to overwrite a version `3` policy with a version `1` policy, and all of + * the conditions in the version `3` policy are lost. + * + * Generated from protobuf field bytes etag = 3; + * @param string $var + * @return $this + */ + public function setEtag($var) + { + GPBUtil::checkString($var, False); + $this->etag = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php new file mode 100644 index 00000000..e86361e6 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/PolicyDelta.php @@ -0,0 +1,92 @@ +google.iam.v1.PolicyDelta + */ +class PolicyDelta extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The delta for Bindings between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.BindingDelta binding_deltas = 1; + */ + private $binding_deltas; + /** + * The delta for AuditConfigs between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfigDelta audit_config_deltas = 2; + */ + private $audit_config_deltas; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Cloud\Iam\V1\BindingDelta>|\Google\Protobuf\Internal\RepeatedField $binding_deltas + * The delta for Bindings between two policies. + * @type array<\Google\Cloud\Iam\V1\AuditConfigDelta>|\Google\Protobuf\Internal\RepeatedField $audit_config_deltas + * The delta for AuditConfigs between two policies. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Policy::initOnce(); + parent::__construct($data); + } + /** + * The delta for Bindings between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.BindingDelta binding_deltas = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getBindingDeltas() + { + return $this->binding_deltas; + } + /** + * The delta for Bindings between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.BindingDelta binding_deltas = 1; + * @param array<\Google\Cloud\Iam\V1\BindingDelta>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setBindingDeltas($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\BindingDelta::class); + $this->binding_deltas = $arr; + return $this; + } + /** + * The delta for AuditConfigs between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfigDelta audit_config_deltas = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAuditConfigDeltas() + { + return $this->audit_config_deltas; + } + /** + * The delta for AuditConfigs between two policies. + * + * Generated from protobuf field repeated .google.iam.v1.AuditConfigDelta audit_config_deltas = 2; + * @param array<\Google\Cloud\Iam\V1\AuditConfigDelta>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAuditConfigDeltas($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\AuditConfigDelta::class); + $this->audit_config_deltas = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php new file mode 100644 index 00000000..2614ae9e --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/SetIamPolicyRequest.php @@ -0,0 +1,167 @@ +google.iam.v1.SetIamPolicyRequest + */ +class SetIamPolicyRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * REQUIRED: The resource for which the policy is being specified. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $resource = ''; + /** + * REQUIRED: The complete policy to be applied to the `resource`. The size of + * the policy is limited to a few 10s of KB. An empty policy is a + * valid policy but certain Cloud Platform services (such as Projects) + * might reject them. + * + * Generated from protobuf field .google.iam.v1.Policy policy = 2 [(.google.api.field_behavior) = REQUIRED]; + */ + protected $policy = null; + /** + * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + * the fields in the mask will be modified. If no mask is provided, the + * following default mask is used: + * `paths: "bindings, etag"` + * + * Generated from protobuf field .google.protobuf.FieldMask update_mask = 3; + */ + protected $update_mask = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $resource + * REQUIRED: The resource for which the policy is being specified. + * See the operation documentation for the appropriate value for this field. + * @type \Google\Cloud\Iam\V1\Policy $policy + * REQUIRED: The complete policy to be applied to the `resource`. The size of + * the policy is limited to a few 10s of KB. An empty policy is a + * valid policy but certain Cloud Platform services (such as Projects) + * might reject them. + * @type \Google\Protobuf\FieldMask $update_mask + * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + * the fields in the mask will be modified. If no mask is provided, the + * following default mask is used: + * `paths: "bindings, etag"` + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\IamPolicy::initOnce(); + parent::__construct($data); + } + /** + * REQUIRED: The resource for which the policy is being specified. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getResource() + { + return $this->resource; + } + /** + * REQUIRED: The resource for which the policy is being specified. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setResource($var) + { + GPBUtil::checkString($var, True); + $this->resource = $var; + return $this; + } + /** + * REQUIRED: The complete policy to be applied to the `resource`. The size of + * the policy is limited to a few 10s of KB. An empty policy is a + * valid policy but certain Cloud Platform services (such as Projects) + * might reject them. + * + * Generated from protobuf field .google.iam.v1.Policy policy = 2 [(.google.api.field_behavior) = REQUIRED]; + * @return \Google\Cloud\Iam\V1\Policy|null + */ + public function getPolicy() + { + return $this->policy; + } + public function hasPolicy() + { + return isset($this->policy); + } + public function clearPolicy() + { + unset($this->policy); + } + /** + * REQUIRED: The complete policy to be applied to the `resource`. The size of + * the policy is limited to a few 10s of KB. An empty policy is a + * valid policy but certain Cloud Platform services (such as Projects) + * might reject them. + * + * Generated from protobuf field .google.iam.v1.Policy policy = 2 [(.google.api.field_behavior) = REQUIRED]; + * @param \Google\Cloud\Iam\V1\Policy $var + * @return $this + */ + public function setPolicy($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\Policy::class); + $this->policy = $var; + return $this; + } + /** + * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + * the fields in the mask will be modified. If no mask is provided, the + * following default mask is used: + * `paths: "bindings, etag"` + * + * Generated from protobuf field .google.protobuf.FieldMask update_mask = 3; + * @return \Google\Protobuf\FieldMask|null + */ + public function getUpdateMask() + { + return $this->update_mask; + } + public function hasUpdateMask() + { + return isset($this->update_mask); + } + public function clearUpdateMask() + { + unset($this->update_mask); + } + /** + * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + * the fields in the mask will be modified. If no mask is provided, the + * following default mask is used: + * `paths: "bindings, etag"` + * + * Generated from protobuf field .google.protobuf.FieldMask update_mask = 3; + * @param \Google\Protobuf\FieldMask $var + * @return $this + */ + public function setUpdateMask($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\FieldMask::class); + $this->update_mask = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php new file mode 100644 index 00000000..6b1ac4be --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsRequest.php @@ -0,0 +1,108 @@ +google.iam.v1.TestIamPermissionsRequest + */ +class TestIamPermissionsRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $resource = ''; + /** + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * + * Generated from protobuf field repeated string permissions = 2 [(.google.api.field_behavior) = REQUIRED]; + */ + private $permissions; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $resource + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * @type array|\Google\Protobuf\Internal\RepeatedField $permissions + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\IamPolicy::initOnce(); + parent::__construct($data); + } + /** + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getResource() + { + return $this->resource; + } + /** + * REQUIRED: The resource for which the policy detail is being requested. + * See the operation documentation for the appropriate value for this field. + * + * Generated from protobuf field string resource = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setResource($var) + { + GPBUtil::checkString($var, True); + $this->resource = $var; + return $this; + } + /** + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * + * Generated from protobuf field repeated string permissions = 2 [(.google.api.field_behavior) = REQUIRED]; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getPermissions() + { + return $this->permissions; + } + /** + * The set of permissions to check for the `resource`. Permissions with + * wildcards (such as '*' or 'storage.*') are not allowed. For more + * information see + * [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + * + * Generated from protobuf field repeated string permissions = 2 [(.google.api.field_behavior) = REQUIRED]; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setPermissions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->permissions = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php new file mode 100644 index 00000000..4bc17e51 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Iam/V1/TestIamPermissionsResponse.php @@ -0,0 +1,65 @@ +google.iam.v1.TestIamPermissionsResponse + */ +class TestIamPermissionsResponse extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A subset of `TestPermissionsRequest.permissions` that the caller is + * allowed. + * + * Generated from protobuf field repeated string permissions = 1; + */ + private $permissions; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array|\Google\Protobuf\Internal\RepeatedField $permissions + * A subset of `TestPermissionsRequest.permissions` that the caller is + * allowed. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\IamPolicy::initOnce(); + parent::__construct($data); + } + /** + * A subset of `TestPermissionsRequest.permissions` that the caller is + * allowed. + * + * Generated from protobuf field repeated string permissions = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getPermissions() + { + return $this->permissions; + } + /** + * A subset of `TestPermissionsRequest.permissions` that the caller is + * allowed. + * + * Generated from protobuf field repeated string permissions = 1; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setPermissions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->permissions = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Location/GetLocationRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Location/GetLocationRequest.php new file mode 100644 index 00000000..97d040d4 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Location/GetLocationRequest.php @@ -0,0 +1,61 @@ +google.cloud.location.GetLocationRequest + */ +class GetLocationRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Resource name for the location. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Resource name for the location. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Cloud\Location\Locations::initOnce(); + parent::__construct($data); + } + /** + * Resource name for the location. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * Resource name for the location. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsRequest.php new file mode 100644 index 00000000..e3362601 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsRequest.php @@ -0,0 +1,154 @@ +google.cloud.location.ListLocationsRequest + */ +class ListLocationsRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The resource that owns the locations collection, if applicable. + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The standard list filter. + * + * Generated from protobuf field string filter = 2; + */ + protected $filter = ''; + /** + * The standard list page size. + * + * Generated from protobuf field int32 page_size = 3; + */ + protected $page_size = 0; + /** + * The standard list page token. + * + * Generated from protobuf field string page_token = 4; + */ + protected $page_token = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * The resource that owns the locations collection, if applicable. + * @type string $filter + * The standard list filter. + * @type int $page_size + * The standard list page size. + * @type string $page_token + * The standard list page token. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Cloud\Location\Locations::initOnce(); + parent::__construct($data); + } + /** + * The resource that owns the locations collection, if applicable. + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The resource that owns the locations collection, if applicable. + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The standard list filter. + * + * Generated from protobuf field string filter = 2; + * @return string + */ + public function getFilter() + { + return $this->filter; + } + /** + * The standard list filter. + * + * Generated from protobuf field string filter = 2; + * @param string $var + * @return $this + */ + public function setFilter($var) + { + GPBUtil::checkString($var, True); + $this->filter = $var; + return $this; + } + /** + * The standard list page size. + * + * Generated from protobuf field int32 page_size = 3; + * @return int + */ + public function getPageSize() + { + return $this->page_size; + } + /** + * The standard list page size. + * + * Generated from protobuf field int32 page_size = 3; + * @param int $var + * @return $this + */ + public function setPageSize($var) + { + GPBUtil::checkInt32($var); + $this->page_size = $var; + return $this; + } + /** + * The standard list page token. + * + * Generated from protobuf field string page_token = 4; + * @return string + */ + public function getPageToken() + { + return $this->page_token; + } + /** + * The standard list page token. + * + * Generated from protobuf field string page_token = 4; + * @param string $var + * @return $this + */ + public function setPageToken($var) + { + GPBUtil::checkString($var, True); + $this->page_token = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsResponse.php b/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsResponse.php new file mode 100644 index 00000000..59d13da8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Location/ListLocationsResponse.php @@ -0,0 +1,92 @@ +google.cloud.location.ListLocationsResponse + */ +class ListLocationsResponse extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A list of locations that matches the specified filter in the request. + * + * Generated from protobuf field repeated .google.cloud.location.Location locations = 1; + */ + private $locations; + /** + * The standard List next-page token. + * + * 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 array<\Google\Cloud\Location\Location>|\Google\Protobuf\Internal\RepeatedField $locations + * A list of locations that matches the specified filter in the request. + * @type string $next_page_token + * The standard List next-page token. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Cloud\Location\Locations::initOnce(); + parent::__construct($data); + } + /** + * A list of locations that matches the specified filter in the request. + * + * Generated from protobuf field repeated .google.cloud.location.Location locations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLocations() + { + return $this->locations; + } + /** + * A list of locations that matches the specified filter in the request. + * + * Generated from protobuf field repeated .google.cloud.location.Location locations = 1; + * @param array<\Google\Cloud\Location\Location>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLocations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Location\Location::class); + $this->locations = $arr; + return $this; + } + /** + * The standard List next-page token. + * + * Generated from protobuf field string next_page_token = 2; + * @return string + */ + public function getNextPageToken() + { + return $this->next_page_token; + } + /** + * The standard List next-page token. + * + * 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/vendor/Gcp/google/common-protos/src/Cloud/Location/Location.php b/vendor/Gcp/google/common-protos/src/Cloud/Location/Location.php new file mode 100644 index 00000000..cb3a5f64 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Location/Location.php @@ -0,0 +1,209 @@ +google.cloud.location.Location + */ +class Location extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Resource name for the location, which may vary between implementations. + * For example: `"projects/example-project/locations/us-east1"` + * + * Generated from protobuf field string name = 1; + */ + protected $name = ''; + /** + * The canonical id for this location. For example: `"us-east1"`. + * + * Generated from protobuf field string location_id = 4; + */ + protected $location_id = ''; + /** + * The friendly name for this location, typically a nearby city name. + * For example, "Tokyo". + * + * Generated from protobuf field string display_name = 5; + */ + protected $display_name = ''; + /** + * Cross-service attributes for the location. For example + * {"cloud.googleapis.com/region": "us-east1"} + * + * Generated from protobuf field map labels = 2; + */ + private $labels; + /** + * Service-specific metadata. For example the available capacity at the given + * location. + * + * Generated from protobuf field .google.protobuf.Any metadata = 3; + */ + protected $metadata = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Resource name for the location, which may vary between implementations. + * For example: `"projects/example-project/locations/us-east1"` + * @type string $location_id + * The canonical id for this location. For example: `"us-east1"`. + * @type string $display_name + * The friendly name for this location, typically a nearby city name. + * For example, "Tokyo". + * @type array|\Google\Protobuf\Internal\MapField $labels + * Cross-service attributes for the location. For example + * {"cloud.googleapis.com/region": "us-east1"} + * @type \Google\Protobuf\Any $metadata + * Service-specific metadata. For example the available capacity at the given + * location. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Cloud\Location\Locations::initOnce(); + parent::__construct($data); + } + /** + * Resource name for the location, which may vary between implementations. + * For example: `"projects/example-project/locations/us-east1"` + * + * Generated from protobuf field string name = 1; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * Resource name for the location, which may vary between implementations. + * For example: `"projects/example-project/locations/us-east1"` + * + * Generated from protobuf field string name = 1; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The canonical id for this location. For example: `"us-east1"`. + * + * Generated from protobuf field string location_id = 4; + * @return string + */ + public function getLocationId() + { + return $this->location_id; + } + /** + * The canonical id for this location. For example: `"us-east1"`. + * + * Generated from protobuf field string location_id = 4; + * @param string $var + * @return $this + */ + public function setLocationId($var) + { + GPBUtil::checkString($var, True); + $this->location_id = $var; + return $this; + } + /** + * The friendly name for this location, typically a nearby city name. + * For example, "Tokyo". + * + * Generated from protobuf field string display_name = 5; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * The friendly name for this location, typically a nearby city name. + * For example, "Tokyo". + * + * Generated from protobuf field string display_name = 5; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } + /** + * Cross-service attributes for the location. For example + * {"cloud.googleapis.com/region": "us-east1"} + * + * Generated from protobuf field map labels = 2; + * @return \Google\Protobuf\Internal\MapField + */ + public function getLabels() + { + return $this->labels; + } + /** + * Cross-service attributes for the location. For example + * {"cloud.googleapis.com/region": "us-east1"} + * + * Generated from protobuf field map labels = 2; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->labels = $arr; + return $this; + } + /** + * Service-specific metadata. For example the available capacity at the given + * location. + * + * Generated from protobuf field .google.protobuf.Any metadata = 3; + * @return \Google\Protobuf\Any|null + */ + public function getMetadata() + { + return $this->metadata; + } + public function hasMetadata() + { + return isset($this->metadata); + } + public function clearMetadata() + { + unset($this->metadata); + } + /** + * Service-specific metadata. For example the available capacity at the given + * location. + * + * Generated from protobuf field .google.protobuf.Any metadata = 3; + * @param \Google\Protobuf\Any $var + * @return $this + */ + public function setMetadata($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->metadata = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php b/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php new file mode 100644 index 00000000..6a188467 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/HttpRequest.php @@ -0,0 +1,577 @@ +google.logging.type.HttpRequest + */ +class HttpRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. + * + * Generated from protobuf field string request_method = 1; + */ + protected $request_method = ''; + /** + * The scheme (http, https), the host name, the path and the query + * portion of the URL that was requested. + * Example: `"http://example.com/some/info?color=red"`. + * + * Generated from protobuf field string request_url = 2; + */ + protected $request_url = ''; + /** + * The size of the HTTP request message in bytes, including the request + * headers and the request body. + * + * Generated from protobuf field int64 request_size = 3; + */ + protected $request_size = 0; + /** + * The response code indicating the status of response. + * Examples: 200, 404. + * + * Generated from protobuf field int32 status = 4; + */ + protected $status = 0; + /** + * The size of the HTTP response message sent back to the client, in bytes, + * including the response headers and the response body. + * + * Generated from protobuf field int64 response_size = 5; + */ + protected $response_size = 0; + /** + * The user agent sent by the client. Example: + * `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET + * CLR 1.0.3705)"`. + * + * Generated from protobuf field string user_agent = 6; + */ + protected $user_agent = ''; + /** + * The IP address (IPv4 or IPv6) of the client that issued the HTTP + * request. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string remote_ip = 7; + */ + protected $remote_ip = ''; + /** + * The IP address (IPv4 or IPv6) of the origin server that the request was + * sent to. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string server_ip = 13; + */ + protected $server_ip = ''; + /** + * The referer URL of the request, as defined in + * [HTTP/1.1 Header Field + * Definitions](https://datatracker.ietf.org/doc/html/rfc2616#section-14.36). + * + * Generated from protobuf field string referer = 8; + */ + protected $referer = ''; + /** + * The request processing latency on the server, from the time the request was + * received until the response was sent. + * + * Generated from protobuf field .google.protobuf.Duration latency = 14; + */ + protected $latency = null; + /** + * Whether or not a cache lookup was attempted. + * + * Generated from protobuf field bool cache_lookup = 11; + */ + protected $cache_lookup = \false; + /** + * Whether or not an entity was served from cache + * (with or without validation). + * + * Generated from protobuf field bool cache_hit = 9; + */ + protected $cache_hit = \false; + /** + * Whether or not the response was validated with the origin server before + * being served from cache. This field is only meaningful if `cache_hit` is + * True. + * + * Generated from protobuf field bool cache_validated_with_origin_server = 10; + */ + protected $cache_validated_with_origin_server = \false; + /** + * The number of HTTP response bytes inserted into cache. Set only when a + * cache fill was attempted. + * + * Generated from protobuf field int64 cache_fill_bytes = 12; + */ + protected $cache_fill_bytes = 0; + /** + * Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket" + * + * Generated from protobuf field string protocol = 15; + */ + protected $protocol = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $request_method + * The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. + * @type string $request_url + * The scheme (http, https), the host name, the path and the query + * portion of the URL that was requested. + * Example: `"http://example.com/some/info?color=red"`. + * @type int|string $request_size + * The size of the HTTP request message in bytes, including the request + * headers and the request body. + * @type int $status + * The response code indicating the status of response. + * Examples: 200, 404. + * @type int|string $response_size + * The size of the HTTP response message sent back to the client, in bytes, + * including the response headers and the response body. + * @type string $user_agent + * The user agent sent by the client. Example: + * `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET + * CLR 1.0.3705)"`. + * @type string $remote_ip + * The IP address (IPv4 or IPv6) of the client that issued the HTTP + * request. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * @type string $server_ip + * The IP address (IPv4 or IPv6) of the origin server that the request was + * sent to. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * @type string $referer + * The referer URL of the request, as defined in + * [HTTP/1.1 Header Field + * Definitions](https://datatracker.ietf.org/doc/html/rfc2616#section-14.36). + * @type \Google\Protobuf\Duration $latency + * The request processing latency on the server, from the time the request was + * received until the response was sent. + * @type bool $cache_lookup + * Whether or not a cache lookup was attempted. + * @type bool $cache_hit + * Whether or not an entity was served from cache + * (with or without validation). + * @type bool $cache_validated_with_origin_server + * Whether or not the response was validated with the origin server before + * being served from cache. This field is only meaningful if `cache_hit` is + * True. + * @type int|string $cache_fill_bytes + * The number of HTTP response bytes inserted into cache. Set only when a + * cache fill was attempted. + * @type string $protocol + * Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket" + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Logging\Type\HttpRequest::initOnce(); + parent::__construct($data); + } + /** + * The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. + * + * Generated from protobuf field string request_method = 1; + * @return string + */ + public function getRequestMethod() + { + return $this->request_method; + } + /** + * The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. + * + * Generated from protobuf field string request_method = 1; + * @param string $var + * @return $this + */ + public function setRequestMethod($var) + { + GPBUtil::checkString($var, True); + $this->request_method = $var; + return $this; + } + /** + * The scheme (http, https), the host name, the path and the query + * portion of the URL that was requested. + * Example: `"http://example.com/some/info?color=red"`. + * + * Generated from protobuf field string request_url = 2; + * @return string + */ + public function getRequestUrl() + { + return $this->request_url; + } + /** + * The scheme (http, https), the host name, the path and the query + * portion of the URL that was requested. + * Example: `"http://example.com/some/info?color=red"`. + * + * Generated from protobuf field string request_url = 2; + * @param string $var + * @return $this + */ + public function setRequestUrl($var) + { + GPBUtil::checkString($var, True); + $this->request_url = $var; + return $this; + } + /** + * The size of the HTTP request message in bytes, including the request + * headers and the request body. + * + * Generated from protobuf field int64 request_size = 3; + * @return int|string + */ + public function getRequestSize() + { + return $this->request_size; + } + /** + * The size of the HTTP request message in bytes, including the request + * headers and the request body. + * + * Generated from protobuf field int64 request_size = 3; + * @param int|string $var + * @return $this + */ + public function setRequestSize($var) + { + GPBUtil::checkInt64($var); + $this->request_size = $var; + return $this; + } + /** + * The response code indicating the status of response. + * Examples: 200, 404. + * + * Generated from protobuf field int32 status = 4; + * @return int + */ + public function getStatus() + { + return $this->status; + } + /** + * The response code indicating the status of response. + * Examples: 200, 404. + * + * Generated from protobuf field int32 status = 4; + * @param int $var + * @return $this + */ + public function setStatus($var) + { + GPBUtil::checkInt32($var); + $this->status = $var; + return $this; + } + /** + * The size of the HTTP response message sent back to the client, in bytes, + * including the response headers and the response body. + * + * Generated from protobuf field int64 response_size = 5; + * @return int|string + */ + public function getResponseSize() + { + return $this->response_size; + } + /** + * The size of the HTTP response message sent back to the client, in bytes, + * including the response headers and the response body. + * + * Generated from protobuf field int64 response_size = 5; + * @param int|string $var + * @return $this + */ + public function setResponseSize($var) + { + GPBUtil::checkInt64($var); + $this->response_size = $var; + return $this; + } + /** + * The user agent sent by the client. Example: + * `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET + * CLR 1.0.3705)"`. + * + * Generated from protobuf field string user_agent = 6; + * @return string + */ + public function getUserAgent() + { + return $this->user_agent; + } + /** + * The user agent sent by the client. Example: + * `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET + * CLR 1.0.3705)"`. + * + * Generated from protobuf field string user_agent = 6; + * @param string $var + * @return $this + */ + public function setUserAgent($var) + { + GPBUtil::checkString($var, True); + $this->user_agent = $var; + return $this; + } + /** + * The IP address (IPv4 or IPv6) of the client that issued the HTTP + * request. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string remote_ip = 7; + * @return string + */ + public function getRemoteIp() + { + return $this->remote_ip; + } + /** + * The IP address (IPv4 or IPv6) of the client that issued the HTTP + * request. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string remote_ip = 7; + * @param string $var + * @return $this + */ + public function setRemoteIp($var) + { + GPBUtil::checkString($var, True); + $this->remote_ip = $var; + return $this; + } + /** + * The IP address (IPv4 or IPv6) of the origin server that the request was + * sent to. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string server_ip = 13; + * @return string + */ + public function getServerIp() + { + return $this->server_ip; + } + /** + * The IP address (IPv4 or IPv6) of the origin server that the request was + * sent to. This field can include port information. Examples: + * `"192.168.1.1"`, `"10.0.0.1:80"`, `"FE80::0202:B3FF:FE1E:8329"`. + * + * Generated from protobuf field string server_ip = 13; + * @param string $var + * @return $this + */ + public function setServerIp($var) + { + GPBUtil::checkString($var, True); + $this->server_ip = $var; + return $this; + } + /** + * The referer URL of the request, as defined in + * [HTTP/1.1 Header Field + * Definitions](https://datatracker.ietf.org/doc/html/rfc2616#section-14.36). + * + * Generated from protobuf field string referer = 8; + * @return string + */ + public function getReferer() + { + return $this->referer; + } + /** + * The referer URL of the request, as defined in + * [HTTP/1.1 Header Field + * Definitions](https://datatracker.ietf.org/doc/html/rfc2616#section-14.36). + * + * Generated from protobuf field string referer = 8; + * @param string $var + * @return $this + */ + public function setReferer($var) + { + GPBUtil::checkString($var, True); + $this->referer = $var; + return $this; + } + /** + * The request processing latency on the server, from the time the request was + * received until the response was sent. + * + * Generated from protobuf field .google.protobuf.Duration latency = 14; + * @return \Google\Protobuf\Duration|null + */ + public function getLatency() + { + return $this->latency; + } + public function hasLatency() + { + return isset($this->latency); + } + public function clearLatency() + { + unset($this->latency); + } + /** + * The request processing latency on the server, from the time the request was + * received until the response was sent. + * + * Generated from protobuf field .google.protobuf.Duration latency = 14; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setLatency($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->latency = $var; + return $this; + } + /** + * Whether or not a cache lookup was attempted. + * + * Generated from protobuf field bool cache_lookup = 11; + * @return bool + */ + public function getCacheLookup() + { + return $this->cache_lookup; + } + /** + * Whether or not a cache lookup was attempted. + * + * Generated from protobuf field bool cache_lookup = 11; + * @param bool $var + * @return $this + */ + public function setCacheLookup($var) + { + GPBUtil::checkBool($var); + $this->cache_lookup = $var; + return $this; + } + /** + * Whether or not an entity was served from cache + * (with or without validation). + * + * Generated from protobuf field bool cache_hit = 9; + * @return bool + */ + public function getCacheHit() + { + return $this->cache_hit; + } + /** + * Whether or not an entity was served from cache + * (with or without validation). + * + * Generated from protobuf field bool cache_hit = 9; + * @param bool $var + * @return $this + */ + public function setCacheHit($var) + { + GPBUtil::checkBool($var); + $this->cache_hit = $var; + return $this; + } + /** + * Whether or not the response was validated with the origin server before + * being served from cache. This field is only meaningful if `cache_hit` is + * True. + * + * Generated from protobuf field bool cache_validated_with_origin_server = 10; + * @return bool + */ + public function getCacheValidatedWithOriginServer() + { + return $this->cache_validated_with_origin_server; + } + /** + * Whether or not the response was validated with the origin server before + * being served from cache. This field is only meaningful if `cache_hit` is + * True. + * + * Generated from protobuf field bool cache_validated_with_origin_server = 10; + * @param bool $var + * @return $this + */ + public function setCacheValidatedWithOriginServer($var) + { + GPBUtil::checkBool($var); + $this->cache_validated_with_origin_server = $var; + return $this; + } + /** + * The number of HTTP response bytes inserted into cache. Set only when a + * cache fill was attempted. + * + * Generated from protobuf field int64 cache_fill_bytes = 12; + * @return int|string + */ + public function getCacheFillBytes() + { + return $this->cache_fill_bytes; + } + /** + * The number of HTTP response bytes inserted into cache. Set only when a + * cache fill was attempted. + * + * Generated from protobuf field int64 cache_fill_bytes = 12; + * @param int|string $var + * @return $this + */ + public function setCacheFillBytes($var) + { + GPBUtil::checkInt64($var); + $this->cache_fill_bytes = $var; + return $this; + } + /** + * Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket" + * + * Generated from protobuf field string protocol = 15; + * @return string + */ + public function getProtocol() + { + return $this->protocol; + } + /** + * Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket" + * + * Generated from protobuf field string protocol = 15; + * @param string $var + * @return $this + */ + public function setProtocol($var) + { + GPBUtil::checkString($var, True); + $this->protocol = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php b/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php new file mode 100644 index 00000000..5664e39a --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/Logging/Type/LogSeverity.php @@ -0,0 +1,101 @@ + DEBUG AND severity <= WARNING + * If you are writing log entries, you should map other severity encodings to + * one of these standard levels. For example, you might map all of Java's FINE, + * FINER, and FINEST levels to `LogSeverity.DEBUG`. You can preserve the + * original severity level in the log entry payload if you wish. + * + * Protobuf type google.logging.type.LogSeverity + */ +class LogSeverity +{ + /** + * (0) The log entry has no assigned severity level. + * + * Generated from protobuf enum DEFAULT = 0; + */ + const PBDEFAULT = 0; + /** + * (100) Debug or trace information. + * + * Generated from protobuf enum DEBUG = 100; + */ + const DEBUG = 100; + /** + * (200) Routine information, such as ongoing status or performance. + * + * Generated from protobuf enum INFO = 200; + */ + const INFO = 200; + /** + * (300) Normal but significant events, such as start up, shut down, or + * a configuration change. + * + * Generated from protobuf enum NOTICE = 300; + */ + const NOTICE = 300; + /** + * (400) Warning events might cause problems. + * + * Generated from protobuf enum WARNING = 400; + */ + const WARNING = 400; + /** + * (500) Error events are likely to cause problems. + * + * Generated from protobuf enum ERROR = 500; + */ + const ERROR = 500; + /** + * (600) Critical events cause more severe problems or outages. + * + * Generated from protobuf enum CRITICAL = 600; + */ + const CRITICAL = 600; + /** + * (700) A person must take an action immediately. + * + * Generated from protobuf enum ALERT = 700; + */ + const ALERT = 700; + /** + * (800) One or more systems are unusable. + * + * Generated from protobuf enum EMERGENCY = 800; + */ + const EMERGENCY = 800; + private static $valueToName = [self::PBDEFAULT => 'DEFAULT', self::DEBUG => 'DEBUG', self::INFO => 'INFO', self::NOTICE => 'NOTICE', self::WARNING => 'WARNING', self::ERROR => 'ERROR', self::CRITICAL => 'CRITICAL', self::ALERT => 'ALERT', self::EMERGENCY => 'EMERGENCY']; + 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)) { + $pbconst = __CLASS__ . '::PB' . \strtoupper($name); + if (!\defined($pbconst)) { + throw new UnexpectedValueException(\sprintf('Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return \constant($pbconst); + } + return \constant($const); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Cloud/OperationResponseMapping.php b/vendor/Gcp/google/common-protos/src/Cloud/OperationResponseMapping.php new file mode 100644 index 00000000..a986ba9e --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Cloud/OperationResponseMapping.php @@ -0,0 +1,72 @@ +google.cloud.OperationResponseMapping + */ +class OperationResponseMapping +{ + /** + * Do not use. + * + * Generated from protobuf enum UNDEFINED = 0; + */ + const UNDEFINED = 0; + /** + * A field in an API-specific (custom) Operation object which carries the same + * meaning as google.longrunning.Operation.name. + * + * Generated from protobuf enum NAME = 1; + */ + const NAME = 1; + /** + * A field in an API-specific (custom) Operation object which carries the same + * meaning as google.longrunning.Operation.done. If the annotated field is of + * an enum type, `annotated_field_name == EnumType.DONE` semantics should be + * equivalent to `Operation.done == true`. If the annotated field is of type + * boolean, then it should follow the same semantics as Operation.done. + * Otherwise, a non-empty value should be treated as `Operation.done == true`. + * + * Generated from protobuf enum STATUS = 2; + */ + const STATUS = 2; + /** + * A field in an API-specific (custom) Operation object which carries the same + * meaning as google.longrunning.Operation.error.code. + * + * Generated from protobuf enum ERROR_CODE = 3; + */ + const ERROR_CODE = 3; + /** + * A field in an API-specific (custom) Operation object which carries the same + * meaning as google.longrunning.Operation.error.message. + * + * Generated from protobuf enum ERROR_MESSAGE = 4; + */ + const ERROR_MESSAGE = 4; + private static $valueToName = [self::UNDEFINED => 'UNDEFINED', self::NAME => 'NAME', self::STATUS => 'STATUS', self::ERROR_CODE => 'ERROR_CODE', self::ERROR_MESSAGE => 'ERROR_MESSAGE']; + 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/vendor/Gcp/google/common-protos/src/Iam/V1/Logging/AuditData.php b/vendor/Gcp/google/common-protos/src/Iam/V1/Logging/AuditData.php new file mode 100644 index 00000000..9c685de7 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Iam/V1/Logging/AuditData.php @@ -0,0 +1,71 @@ +google.iam.v1.logging.AuditData + */ +class AuditData extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Policy delta between the original policy and the newly set policy. + * + * Generated from protobuf field .google.iam.v1.PolicyDelta policy_delta = 2; + */ + protected $policy_delta = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Iam\V1\PolicyDelta $policy_delta + * Policy delta between the original policy and the newly set policy. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Iam\V1\Logging\AuditData::initOnce(); + parent::__construct($data); + } + /** + * Policy delta between the original policy and the newly set policy. + * + * Generated from protobuf field .google.iam.v1.PolicyDelta policy_delta = 2; + * @return \Google\Cloud\Iam\V1\PolicyDelta|null + */ + public function getPolicyDelta() + { + return $this->policy_delta; + } + public function hasPolicyDelta() + { + return isset($this->policy_delta); + } + public function clearPolicyDelta() + { + unset($this->policy_delta); + } + /** + * Policy delta between the original policy and the newly set policy. + * + * Generated from protobuf field .google.iam.v1.PolicyDelta policy_delta = 2; + * @param \Google\Cloud\Iam\V1\PolicyDelta $var + * @return $this + */ + public function setPolicyDelta($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Iam\V1\PolicyDelta::class); + $this->policy_delta = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/BadRequest.php b/vendor/Gcp/google/common-protos/src/Rpc/BadRequest.php new file mode 100644 index 00000000..80e210eb --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/BadRequest.php @@ -0,0 +1,62 @@ +google.rpc.BadRequest + */ +class BadRequest extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Describes all violations in a client request. + * + * Generated from protobuf field repeated .google.rpc.BadRequest.FieldViolation field_violations = 1; + */ + private $field_violations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Rpc\BadRequest\FieldViolation>|\Google\Protobuf\Internal\RepeatedField $field_violations + * Describes all violations in a client request. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * Describes all violations in a client request. + * + * Generated from protobuf field repeated .google.rpc.BadRequest.FieldViolation field_violations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getFieldViolations() + { + return $this->field_violations; + } + /** + * Describes all violations in a client request. + * + * Generated from protobuf field repeated .google.rpc.BadRequest.FieldViolation field_violations = 1; + * @param array<\Google\Rpc\BadRequest\FieldViolation>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setFieldViolations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\BadRequest\FieldViolation::class); + $this->field_violations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/BadRequest/FieldViolation.php b/vendor/Gcp/google/common-protos/src/Rpc/BadRequest/FieldViolation.php new file mode 100644 index 00000000..3acf5ece --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/BadRequest/FieldViolation.php @@ -0,0 +1,204 @@ +google.rpc.BadRequest.FieldViolation + */ +class FieldViolation extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A path that leads to a field in the request body. The value will be a + * sequence of dot-separated identifiers that identify a protocol buffer + * field. + * Consider the following: + * message CreateContactRequest { + * message EmailAddress { + * enum Type { + * TYPE_UNSPECIFIED = 0; + * HOME = 1; + * WORK = 2; + * } + * optional string email = 1; + * repeated EmailType type = 2; + * } + * string full_name = 1; + * repeated EmailAddress email_addresses = 2; + * } + * In this example, in proto `field` could take one of the following values: + * * `full_name` for a violation in the `full_name` value + * * `email_addresses[1].email` for a violation in the `email` field of the + * first `email_addresses` message + * * `email_addresses[3].type[2]` for a violation in the second `type` + * value in the third `email_addresses` message. + * In JSON, the same values are represented as: + * * `fullName` for a violation in the `fullName` value + * * `emailAddresses[1].email` for a violation in the `email` field of the + * first `emailAddresses` message + * * `emailAddresses[3].type[2]` for a violation in the second `type` + * value in the third `emailAddresses` message. + * + * Generated from protobuf field string field = 1; + */ + protected $field = ''; + /** + * A description of why the request element is bad. + * + * Generated from protobuf field string description = 2; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $field + * A path that leads to a field in the request body. The value will be a + * sequence of dot-separated identifiers that identify a protocol buffer + * field. + * Consider the following: + * message CreateContactRequest { + * message EmailAddress { + * enum Type { + * TYPE_UNSPECIFIED = 0; + * HOME = 1; + * WORK = 2; + * } + * optional string email = 1; + * repeated EmailType type = 2; + * } + * string full_name = 1; + * repeated EmailAddress email_addresses = 2; + * } + * In this example, in proto `field` could take one of the following values: + * * `full_name` for a violation in the `full_name` value + * * `email_addresses[1].email` for a violation in the `email` field of the + * first `email_addresses` message + * * `email_addresses[3].type[2]` for a violation in the second `type` + * value in the third `email_addresses` message. + * In JSON, the same values are represented as: + * * `fullName` for a violation in the `fullName` value + * * `emailAddresses[1].email` for a violation in the `email` field of the + * first `emailAddresses` message + * * `emailAddresses[3].type[2]` for a violation in the second `type` + * value in the third `emailAddresses` message. + * @type string $description + * A description of why the request element is bad. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * A path that leads to a field in the request body. The value will be a + * sequence of dot-separated identifiers that identify a protocol buffer + * field. + * Consider the following: + * message CreateContactRequest { + * message EmailAddress { + * enum Type { + * TYPE_UNSPECIFIED = 0; + * HOME = 1; + * WORK = 2; + * } + * optional string email = 1; + * repeated EmailType type = 2; + * } + * string full_name = 1; + * repeated EmailAddress email_addresses = 2; + * } + * In this example, in proto `field` could take one of the following values: + * * `full_name` for a violation in the `full_name` value + * * `email_addresses[1].email` for a violation in the `email` field of the + * first `email_addresses` message + * * `email_addresses[3].type[2]` for a violation in the second `type` + * value in the third `email_addresses` message. + * In JSON, the same values are represented as: + * * `fullName` for a violation in the `fullName` value + * * `emailAddresses[1].email` for a violation in the `email` field of the + * first `emailAddresses` message + * * `emailAddresses[3].type[2]` for a violation in the second `type` + * value in the third `emailAddresses` message. + * + * Generated from protobuf field string field = 1; + * @return string + */ + public function getField() + { + return $this->field; + } + /** + * A path that leads to a field in the request body. The value will be a + * sequence of dot-separated identifiers that identify a protocol buffer + * field. + * Consider the following: + * message CreateContactRequest { + * message EmailAddress { + * enum Type { + * TYPE_UNSPECIFIED = 0; + * HOME = 1; + * WORK = 2; + * } + * optional string email = 1; + * repeated EmailType type = 2; + * } + * string full_name = 1; + * repeated EmailAddress email_addresses = 2; + * } + * In this example, in proto `field` could take one of the following values: + * * `full_name` for a violation in the `full_name` value + * * `email_addresses[1].email` for a violation in the `email` field of the + * first `email_addresses` message + * * `email_addresses[3].type[2]` for a violation in the second `type` + * value in the third `email_addresses` message. + * In JSON, the same values are represented as: + * * `fullName` for a violation in the `fullName` value + * * `emailAddresses[1].email` for a violation in the `email` field of the + * first `emailAddresses` message + * * `emailAddresses[3].type[2]` for a violation in the second `type` + * value in the third `emailAddresses` message. + * + * Generated from protobuf field string field = 1; + * @param string $var + * @return $this + */ + public function setField($var) + { + GPBUtil::checkString($var, True); + $this->field = $var; + return $this; + } + /** + * A description of why the request element is bad. + * + * Generated from protobuf field string description = 2; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A description of why the request element is bad. + * + * Generated from protobuf field string description = 2; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Code.php b/vendor/Gcp/google/common-protos/src/Rpc/Code.php new file mode 100644 index 00000000..714861da --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Code.php @@ -0,0 +1,217 @@ +google.rpc.Code + */ +class Code +{ + /** + * Not an error; returned on success. + * HTTP Mapping: 200 OK + * + * Generated from protobuf enum OK = 0; + */ + const OK = 0; + /** + * The operation was cancelled, typically by the caller. + * HTTP Mapping: 499 Client Closed Request + * + * Generated from protobuf enum CANCELLED = 1; + */ + const CANCELLED = 1; + /** + * Unknown error. For example, this error may be returned when + * a `Status` value received from another address space belongs to + * an error space that is not known in this address space. Also + * errors raised by APIs that do not return enough error information + * may be converted to this error. + * HTTP Mapping: 500 Internal Server Error + * + * Generated from protobuf enum UNKNOWN = 2; + */ + const UNKNOWN = 2; + /** + * The client specified an invalid argument. Note that this differs + * from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments + * that are problematic regardless of the state of the system + * (e.g., a malformed file name). + * HTTP Mapping: 400 Bad Request + * + * Generated from protobuf enum INVALID_ARGUMENT = 3; + */ + const INVALID_ARGUMENT = 3; + /** + * The deadline expired before the operation could complete. For operations + * that change the state of the system, this error may be returned + * even if the operation has completed successfully. For example, a + * successful response from a server could have been delayed long + * enough for the deadline to expire. + * HTTP Mapping: 504 Gateway Timeout + * + * Generated from protobuf enum DEADLINE_EXCEEDED = 4; + */ + const DEADLINE_EXCEEDED = 4; + /** + * Some requested entity (e.g., file or directory) was not found. + * Note to server developers: if a request is denied for an entire class + * of users, such as gradual feature rollout or undocumented allowlist, + * `NOT_FOUND` may be used. If a request is denied for some users within + * a class of users, such as user-based access control, `PERMISSION_DENIED` + * must be used. + * HTTP Mapping: 404 Not Found + * + * Generated from protobuf enum NOT_FOUND = 5; + */ + const NOT_FOUND = 5; + /** + * The entity that a client attempted to create (e.g., file or directory) + * already exists. + * HTTP Mapping: 409 Conflict + * + * Generated from protobuf enum ALREADY_EXISTS = 6; + */ + const ALREADY_EXISTS = 6; + /** + * The caller does not have permission to execute the specified + * operation. `PERMISSION_DENIED` must not be used for rejections + * caused by exhausting some resource (use `RESOURCE_EXHAUSTED` + * instead for those errors). `PERMISSION_DENIED` must not be + * used if the caller can not be identified (use `UNAUTHENTICATED` + * instead for those errors). This error code does not imply the + * request is valid or the requested entity exists or satisfies + * other pre-conditions. + * HTTP Mapping: 403 Forbidden + * + * Generated from protobuf enum PERMISSION_DENIED = 7; + */ + const PERMISSION_DENIED = 7; + /** + * The request does not have valid authentication credentials for the + * operation. + * HTTP Mapping: 401 Unauthorized + * + * Generated from protobuf enum UNAUTHENTICATED = 16; + */ + const UNAUTHENTICATED = 16; + /** + * Some resource has been exhausted, perhaps a per-user quota, or + * perhaps the entire file system is out of space. + * HTTP Mapping: 429 Too Many Requests + * + * Generated from protobuf enum RESOURCE_EXHAUSTED = 8; + */ + const RESOURCE_EXHAUSTED = 8; + /** + * The operation was rejected because the system is not in a state + * required for the operation's execution. For example, the directory + * to be deleted is non-empty, an rmdir operation is applied to + * a non-directory, etc. + * Service implementors can use the following guidelines to decide + * between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: + * (a) Use `UNAVAILABLE` if the client can retry just the failing call. + * (b) Use `ABORTED` if the client should retry at a higher level. For + * example, when a client-specified test-and-set fails, indicating the + * client should restart a read-modify-write sequence. + * (c) Use `FAILED_PRECONDITION` if the client should not retry until + * the system state has been explicitly fixed. For example, if an "rmdir" + * fails because the directory is non-empty, `FAILED_PRECONDITION` + * should be returned since the client should not retry unless + * the files are deleted from the directory. + * HTTP Mapping: 400 Bad Request + * + * Generated from protobuf enum FAILED_PRECONDITION = 9; + */ + const FAILED_PRECONDITION = 9; + /** + * The operation was aborted, typically due to a concurrency issue such as + * a sequencer check failure or transaction abort. + * See the guidelines above for deciding between `FAILED_PRECONDITION`, + * `ABORTED`, and `UNAVAILABLE`. + * HTTP Mapping: 409 Conflict + * + * Generated from protobuf enum ABORTED = 10; + */ + const ABORTED = 10; + /** + * The operation was attempted past the valid range. E.g., seeking or + * reading past end-of-file. + * Unlike `INVALID_ARGUMENT`, this error indicates a problem that may + * be fixed if the system state changes. For example, a 32-bit file + * system will generate `INVALID_ARGUMENT` if asked to read at an + * offset that is not in the range [0,2^32-1], but it will generate + * `OUT_OF_RANGE` if asked to read from an offset past the current + * file size. + * There is a fair bit of overlap between `FAILED_PRECONDITION` and + * `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific + * error) when it applies so that callers who are iterating through + * a space can easily look for an `OUT_OF_RANGE` error to detect when + * they are done. + * HTTP Mapping: 400 Bad Request + * + * Generated from protobuf enum OUT_OF_RANGE = 11; + */ + const OUT_OF_RANGE = 11; + /** + * The operation is not implemented or is not supported/enabled in this + * service. + * HTTP Mapping: 501 Not Implemented + * + * Generated from protobuf enum UNIMPLEMENTED = 12; + */ + const UNIMPLEMENTED = 12; + /** + * Internal errors. This means that some invariants expected by the + * underlying system have been broken. This error code is reserved + * for serious errors. + * HTTP Mapping: 500 Internal Server Error + * + * Generated from protobuf enum INTERNAL = 13; + */ + const INTERNAL = 13; + /** + * The service is currently unavailable. This is most likely a + * transient condition, which can be corrected by retrying with + * a backoff. Note that it is not always safe to retry + * non-idempotent operations. + * See the guidelines above for deciding between `FAILED_PRECONDITION`, + * `ABORTED`, and `UNAVAILABLE`. + * HTTP Mapping: 503 Service Unavailable + * + * Generated from protobuf enum UNAVAILABLE = 14; + */ + const UNAVAILABLE = 14; + /** + * Unrecoverable data loss or corruption. + * HTTP Mapping: 500 Internal Server Error + * + * Generated from protobuf enum DATA_LOSS = 15; + */ + const DATA_LOSS = 15; + private static $valueToName = [self::OK => 'OK', self::CANCELLED => 'CANCELLED', self::UNKNOWN => 'UNKNOWN', self::INVALID_ARGUMENT => 'INVALID_ARGUMENT', self::DEADLINE_EXCEEDED => 'DEADLINE_EXCEEDED', self::NOT_FOUND => 'NOT_FOUND', self::ALREADY_EXISTS => 'ALREADY_EXISTS', self::PERMISSION_DENIED => 'PERMISSION_DENIED', self::UNAUTHENTICATED => 'UNAUTHENTICATED', self::RESOURCE_EXHAUSTED => 'RESOURCE_EXHAUSTED', self::FAILED_PRECONDITION => 'FAILED_PRECONDITION', self::ABORTED => 'ABORTED', self::OUT_OF_RANGE => 'OUT_OF_RANGE', self::UNIMPLEMENTED => 'UNIMPLEMENTED', self::INTERNAL => 'INTERNAL', self::UNAVAILABLE => 'UNAVAILABLE', self::DATA_LOSS => 'DATA_LOSS']; + 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/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext.php new file mode 100644 index 00000000..0b849274 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext.php @@ -0,0 +1,378 @@ +google.rpc.context.AttributeContext + */ +class AttributeContext extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The origin of a network activity. In a multi hop network activity, + * the origin represents the sender of the first hop. For the first hop, + * the `source` and the `origin` must have the same content. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer origin = 7; + */ + protected $origin = null; + /** + * The source of a network activity, such as starting a TCP connection. + * In a multi hop network activity, the source represents the sender of the + * last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer source = 1; + */ + protected $source = null; + /** + * The destination of a network activity, such as accepting a TCP connection. + * In a multi hop network activity, the destination represents the receiver of + * the last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer destination = 2; + */ + protected $destination = null; + /** + * Represents a network request, such as an HTTP request. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Request request = 3; + */ + protected $request = null; + /** + * Represents a network response, such as an HTTP response. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Response response = 4; + */ + protected $response = null; + /** + * Represents a target resource that is involved with a network activity. + * If multiple resources are involved with an activity, this must be the + * primary one. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Resource resource = 5; + */ + protected $resource = null; + /** + * Represents an API operation that is involved to a network activity. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Api api = 6; + */ + protected $api = null; + /** + * Supports extensions for advanced use cases, such as logs and metrics. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 8; + */ + private $extensions; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Rpc\Context\AttributeContext\Peer $origin + * The origin of a network activity. In a multi hop network activity, + * the origin represents the sender of the first hop. For the first hop, + * the `source` and the `origin` must have the same content. + * @type \Google\Rpc\Context\AttributeContext\Peer $source + * The source of a network activity, such as starting a TCP connection. + * In a multi hop network activity, the source represents the sender of the + * last hop. + * @type \Google\Rpc\Context\AttributeContext\Peer $destination + * The destination of a network activity, such as accepting a TCP connection. + * In a multi hop network activity, the destination represents the receiver of + * the last hop. + * @type \Google\Rpc\Context\AttributeContext\Request $request + * Represents a network request, such as an HTTP request. + * @type \Google\Rpc\Context\AttributeContext\Response $response + * Represents a network response, such as an HTTP response. + * @type \Google\Rpc\Context\AttributeContext\Resource $resource + * Represents a target resource that is involved with a network activity. + * If multiple resources are involved with an activity, this must be the + * primary one. + * @type \Google\Rpc\Context\AttributeContext\Api $api + * Represents an API operation that is involved to a network activity. + * @type array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $extensions + * Supports extensions for advanced use cases, such as logs and metrics. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The origin of a network activity. In a multi hop network activity, + * the origin represents the sender of the first hop. For the first hop, + * the `source` and the `origin` must have the same content. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer origin = 7; + * @return \Google\Rpc\Context\AttributeContext\Peer|null + */ + public function getOrigin() + { + return $this->origin; + } + public function hasOrigin() + { + return isset($this->origin); + } + public function clearOrigin() + { + unset($this->origin); + } + /** + * The origin of a network activity. In a multi hop network activity, + * the origin represents the sender of the first hop. For the first hop, + * the `source` and the `origin` must have the same content. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer origin = 7; + * @param \Google\Rpc\Context\AttributeContext\Peer $var + * @return $this + */ + public function setOrigin($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Peer::class); + $this->origin = $var; + return $this; + } + /** + * The source of a network activity, such as starting a TCP connection. + * In a multi hop network activity, the source represents the sender of the + * last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer source = 1; + * @return \Google\Rpc\Context\AttributeContext\Peer|null + */ + public function getSource() + { + return $this->source; + } + public function hasSource() + { + return isset($this->source); + } + public function clearSource() + { + unset($this->source); + } + /** + * The source of a network activity, such as starting a TCP connection. + * In a multi hop network activity, the source represents the sender of the + * last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer source = 1; + * @param \Google\Rpc\Context\AttributeContext\Peer $var + * @return $this + */ + public function setSource($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Peer::class); + $this->source = $var; + return $this; + } + /** + * The destination of a network activity, such as accepting a TCP connection. + * In a multi hop network activity, the destination represents the receiver of + * the last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer destination = 2; + * @return \Google\Rpc\Context\AttributeContext\Peer|null + */ + public function getDestination() + { + return $this->destination; + } + public function hasDestination() + { + return isset($this->destination); + } + public function clearDestination() + { + unset($this->destination); + } + /** + * The destination of a network activity, such as accepting a TCP connection. + * In a multi hop network activity, the destination represents the receiver of + * the last hop. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Peer destination = 2; + * @param \Google\Rpc\Context\AttributeContext\Peer $var + * @return $this + */ + public function setDestination($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Peer::class); + $this->destination = $var; + return $this; + } + /** + * Represents a network request, such as an HTTP request. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Request request = 3; + * @return \Google\Rpc\Context\AttributeContext\Request|null + */ + public function getRequest() + { + return $this->request; + } + public function hasRequest() + { + return isset($this->request); + } + public function clearRequest() + { + unset($this->request); + } + /** + * Represents a network request, such as an HTTP request. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Request request = 3; + * @param \Google\Rpc\Context\AttributeContext\Request $var + * @return $this + */ + public function setRequest($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Request::class); + $this->request = $var; + return $this; + } + /** + * Represents a network response, such as an HTTP response. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Response response = 4; + * @return \Google\Rpc\Context\AttributeContext\Response|null + */ + public function getResponse() + { + return $this->response; + } + public function hasResponse() + { + return isset($this->response); + } + public function clearResponse() + { + unset($this->response); + } + /** + * Represents a network response, such as an HTTP response. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Response response = 4; + * @param \Google\Rpc\Context\AttributeContext\Response $var + * @return $this + */ + public function setResponse($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Response::class); + $this->response = $var; + return $this; + } + /** + * Represents a target resource that is involved with a network activity. + * If multiple resources are involved with an activity, this must be the + * primary one. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Resource resource = 5; + * @return \Google\Rpc\Context\AttributeContext\Resource|null + */ + public function getResource() + { + return $this->resource; + } + public function hasResource() + { + return isset($this->resource); + } + public function clearResource() + { + unset($this->resource); + } + /** + * Represents a target resource that is involved with a network activity. + * If multiple resources are involved with an activity, this must be the + * primary one. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Resource resource = 5; + * @param \Google\Rpc\Context\AttributeContext\Resource $var + * @return $this + */ + public function setResource($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Resource::class); + $this->resource = $var; + return $this; + } + /** + * Represents an API operation that is involved to a network activity. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Api api = 6; + * @return \Google\Rpc\Context\AttributeContext\Api|null + */ + public function getApi() + { + return $this->api; + } + public function hasApi() + { + return isset($this->api); + } + public function clearApi() + { + unset($this->api); + } + /** + * Represents an API operation that is involved to a network activity. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Api api = 6; + * @param \Google\Rpc\Context\AttributeContext\Api $var + * @return $this + */ + public function setApi($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Api::class); + $this->api = $var; + return $this; + } + /** + * Supports extensions for advanced use cases, such as logs and metrics. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 8; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getExtensions() + { + return $this->extensions; + } + /** + * Supports extensions for advanced use cases, such as logs and metrics. + * + * Generated from protobuf field repeated .google.protobuf.Any extensions = 8; + * @param array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setExtensions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->extensions = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Api.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Api.php new file mode 100644 index 00000000..49a3e7e8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Api.php @@ -0,0 +1,180 @@ +google.rpc.context.AttributeContext.Api + */ +class Api extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The API service name. It is a logical identifier for a networked API, + * such as "pubsub.googleapis.com". The naming syntax depends on the + * API management system being used for handling the request. + * + * Generated from protobuf field string service = 1; + */ + protected $service = ''; + /** + * The API operation name. For gRPC requests, it is the fully qualified API + * method name, such as "google.pubsub.v1.Publisher.Publish". For OpenAPI + * requests, it is the `operationId`, such as "getPet". + * + * Generated from protobuf field string operation = 2; + */ + protected $operation = ''; + /** + * The API protocol used for sending the request, such as "http", "https", + * "grpc", or "internal". + * + * Generated from protobuf field string protocol = 3; + */ + protected $protocol = ''; + /** + * The API version associated with the API operation above, such as "v1" or + * "v1alpha1". + * + * Generated from protobuf field string version = 4; + */ + protected $version = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $service + * The API service name. It is a logical identifier for a networked API, + * such as "pubsub.googleapis.com". The naming syntax depends on the + * API management system being used for handling the request. + * @type string $operation + * The API operation name. For gRPC requests, it is the fully qualified API + * method name, such as "google.pubsub.v1.Publisher.Publish". For OpenAPI + * requests, it is the `operationId`, such as "getPet". + * @type string $protocol + * The API protocol used for sending the request, such as "http", "https", + * "grpc", or "internal". + * @type string $version + * The API version associated with the API operation above, such as "v1" or + * "v1alpha1". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The API service name. It is a logical identifier for a networked API, + * such as "pubsub.googleapis.com". The naming syntax depends on the + * API management system being used for handling the request. + * + * Generated from protobuf field string service = 1; + * @return string + */ + public function getService() + { + return $this->service; + } + /** + * The API service name. It is a logical identifier for a networked API, + * such as "pubsub.googleapis.com". The naming syntax depends on the + * API management system being used for handling the request. + * + * Generated from protobuf field string service = 1; + * @param string $var + * @return $this + */ + public function setService($var) + { + GPBUtil::checkString($var, True); + $this->service = $var; + return $this; + } + /** + * The API operation name. For gRPC requests, it is the fully qualified API + * method name, such as "google.pubsub.v1.Publisher.Publish". For OpenAPI + * requests, it is the `operationId`, such as "getPet". + * + * Generated from protobuf field string operation = 2; + * @return string + */ + public function getOperation() + { + return $this->operation; + } + /** + * The API operation name. For gRPC requests, it is the fully qualified API + * method name, such as "google.pubsub.v1.Publisher.Publish". For OpenAPI + * requests, it is the `operationId`, such as "getPet". + * + * Generated from protobuf field string operation = 2; + * @param string $var + * @return $this + */ + public function setOperation($var) + { + GPBUtil::checkString($var, True); + $this->operation = $var; + return $this; + } + /** + * The API protocol used for sending the request, such as "http", "https", + * "grpc", or "internal". + * + * Generated from protobuf field string protocol = 3; + * @return string + */ + public function getProtocol() + { + return $this->protocol; + } + /** + * The API protocol used for sending the request, such as "http", "https", + * "grpc", or "internal". + * + * Generated from protobuf field string protocol = 3; + * @param string $var + * @return $this + */ + public function setProtocol($var) + { + GPBUtil::checkString($var, True); + $this->protocol = $var; + return $this; + } + /** + * The API version associated with the API operation above, such as "v1" or + * "v1alpha1". + * + * Generated from protobuf field string version = 4; + * @return string + */ + public function getVersion() + { + return $this->version; + } + /** + * The API version associated with the API operation above, such as "v1" or + * "v1alpha1". + * + * Generated from protobuf field string version = 4; + * @param string $var + * @return $this + */ + public function setVersion($var) + { + GPBUtil::checkString($var, True); + $this->version = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php new file mode 100644 index 00000000..bb42f7cd --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Auth.php @@ -0,0 +1,335 @@ +google.rpc.context.AttributeContext.Auth + */ +class Auth extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The authenticated principal. Reflects the issuer (`iss`) and subject + * (`sub`) claims within a JWT. The issuer and subject should be `/` + * delimited, with `/` percent-encoded within the subject fragment. For + * Google accounts, the principal format is: + * "https://accounts.google.com/{id}" + * + * Generated from protobuf field string principal = 1; + */ + protected $principal = ''; + /** + * The intended audience(s) for this authentication information. Reflects + * the audience (`aud`) claim within a JWT. The audience + * value(s) depends on the `issuer`, but typically include one or more of + * the following pieces of information: + * * The services intended to receive the credential. For example, + * ["https://pubsub.googleapis.com/", "https://storage.googleapis.com/"]. + * * A set of service-based scopes. For example, + * ["https://www.googleapis.com/auth/cloud-platform"]. + * * The client id of an app, such as the Firebase project id for JWTs + * from Firebase Auth. + * Consult the documentation for the credential issuer to determine the + * information provided. + * + * Generated from protobuf field repeated string audiences = 2; + */ + private $audiences; + /** + * The authorized presenter of the credential. Reflects the optional + * Authorized Presenter (`azp`) claim within a JWT or the + * OAuth client id. For example, a Google Cloud Platform client id looks + * as follows: "123456789012.apps.googleusercontent.com". + * + * Generated from protobuf field string presenter = 3; + */ + protected $presenter = ''; + /** + * Structured claims presented with the credential. JWTs include + * `{key: value}` pairs for standard and private claims. The following + * is a subset of the standard required and optional claims that would + * typically be presented for a Google-based JWT: + * {'iss': 'accounts.google.com', + * 'sub': '113289723416554971153', + * 'aud': ['123456789012', 'pubsub.googleapis.com'], + * 'azp': '123456789012.apps.googleusercontent.com', + * 'email': 'jsmith@example.com', + * 'iat': 1353601026, + * 'exp': 1353604926} + * SAML assertions are similarly specified, but with an identity provider + * dependent structure. + * + * Generated from protobuf field .google.protobuf.Struct claims = 4; + */ + protected $claims = null; + /** + * A list of access level resource names that allow resources to be + * accessed by authenticated requester. It is part of Secure GCP processing + * for the incoming request. An access level string has the format: + * "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}" + * Example: + * "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL" + * + * Generated from protobuf field repeated string access_levels = 5; + */ + private $access_levels; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $principal + * The authenticated principal. Reflects the issuer (`iss`) and subject + * (`sub`) claims within a JWT. The issuer and subject should be `/` + * delimited, with `/` percent-encoded within the subject fragment. For + * Google accounts, the principal format is: + * "https://accounts.google.com/{id}" + * @type array|\Google\Protobuf\Internal\RepeatedField $audiences + * The intended audience(s) for this authentication information. Reflects + * the audience (`aud`) claim within a JWT. The audience + * value(s) depends on the `issuer`, but typically include one or more of + * the following pieces of information: + * * The services intended to receive the credential. For example, + * ["https://pubsub.googleapis.com/", "https://storage.googleapis.com/"]. + * * A set of service-based scopes. For example, + * ["https://www.googleapis.com/auth/cloud-platform"]. + * * The client id of an app, such as the Firebase project id for JWTs + * from Firebase Auth. + * Consult the documentation for the credential issuer to determine the + * information provided. + * @type string $presenter + * The authorized presenter of the credential. Reflects the optional + * Authorized Presenter (`azp`) claim within a JWT or the + * OAuth client id. For example, a Google Cloud Platform client id looks + * as follows: "123456789012.apps.googleusercontent.com". + * @type \Google\Protobuf\Struct $claims + * Structured claims presented with the credential. JWTs include + * `{key: value}` pairs for standard and private claims. The following + * is a subset of the standard required and optional claims that would + * typically be presented for a Google-based JWT: + * {'iss': 'accounts.google.com', + * 'sub': '113289723416554971153', + * 'aud': ['123456789012', 'pubsub.googleapis.com'], + * 'azp': '123456789012.apps.googleusercontent.com', + * 'email': 'jsmith@example.com', + * 'iat': 1353601026, + * 'exp': 1353604926} + * SAML assertions are similarly specified, but with an identity provider + * dependent structure. + * @type array|\Google\Protobuf\Internal\RepeatedField $access_levels + * A list of access level resource names that allow resources to be + * accessed by authenticated requester. It is part of Secure GCP processing + * for the incoming request. An access level string has the format: + * "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}" + * Example: + * "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL" + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The authenticated principal. Reflects the issuer (`iss`) and subject + * (`sub`) claims within a JWT. The issuer and subject should be `/` + * delimited, with `/` percent-encoded within the subject fragment. For + * Google accounts, the principal format is: + * "https://accounts.google.com/{id}" + * + * Generated from protobuf field string principal = 1; + * @return string + */ + public function getPrincipal() + { + return $this->principal; + } + /** + * The authenticated principal. Reflects the issuer (`iss`) and subject + * (`sub`) claims within a JWT. The issuer and subject should be `/` + * delimited, with `/` percent-encoded within the subject fragment. For + * Google accounts, the principal format is: + * "https://accounts.google.com/{id}" + * + * Generated from protobuf field string principal = 1; + * @param string $var + * @return $this + */ + public function setPrincipal($var) + { + GPBUtil::checkString($var, True); + $this->principal = $var; + return $this; + } + /** + * The intended audience(s) for this authentication information. Reflects + * the audience (`aud`) claim within a JWT. The audience + * value(s) depends on the `issuer`, but typically include one or more of + * the following pieces of information: + * * The services intended to receive the credential. For example, + * ["https://pubsub.googleapis.com/", "https://storage.googleapis.com/"]. + * * A set of service-based scopes. For example, + * ["https://www.googleapis.com/auth/cloud-platform"]. + * * The client id of an app, such as the Firebase project id for JWTs + * from Firebase Auth. + * Consult the documentation for the credential issuer to determine the + * information provided. + * + * Generated from protobuf field repeated string audiences = 2; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAudiences() + { + return $this->audiences; + } + /** + * The intended audience(s) for this authentication information. Reflects + * the audience (`aud`) claim within a JWT. The audience + * value(s) depends on the `issuer`, but typically include one or more of + * the following pieces of information: + * * The services intended to receive the credential. For example, + * ["https://pubsub.googleapis.com/", "https://storage.googleapis.com/"]. + * * A set of service-based scopes. For example, + * ["https://www.googleapis.com/auth/cloud-platform"]. + * * The client id of an app, such as the Firebase project id for JWTs + * from Firebase Auth. + * Consult the documentation for the credential issuer to determine the + * information provided. + * + * Generated from protobuf field repeated string audiences = 2; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAudiences($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->audiences = $arr; + return $this; + } + /** + * The authorized presenter of the credential. Reflects the optional + * Authorized Presenter (`azp`) claim within a JWT or the + * OAuth client id. For example, a Google Cloud Platform client id looks + * as follows: "123456789012.apps.googleusercontent.com". + * + * Generated from protobuf field string presenter = 3; + * @return string + */ + public function getPresenter() + { + return $this->presenter; + } + /** + * The authorized presenter of the credential. Reflects the optional + * Authorized Presenter (`azp`) claim within a JWT or the + * OAuth client id. For example, a Google Cloud Platform client id looks + * as follows: "123456789012.apps.googleusercontent.com". + * + * Generated from protobuf field string presenter = 3; + * @param string $var + * @return $this + */ + public function setPresenter($var) + { + GPBUtil::checkString($var, True); + $this->presenter = $var; + return $this; + } + /** + * Structured claims presented with the credential. JWTs include + * `{key: value}` pairs for standard and private claims. The following + * is a subset of the standard required and optional claims that would + * typically be presented for a Google-based JWT: + * {'iss': 'accounts.google.com', + * 'sub': '113289723416554971153', + * 'aud': ['123456789012', 'pubsub.googleapis.com'], + * 'azp': '123456789012.apps.googleusercontent.com', + * 'email': 'jsmith@example.com', + * 'iat': 1353601026, + * 'exp': 1353604926} + * SAML assertions are similarly specified, but with an identity provider + * dependent structure. + * + * Generated from protobuf field .google.protobuf.Struct claims = 4; + * @return \Google\Protobuf\Struct|null + */ + public function getClaims() + { + return $this->claims; + } + public function hasClaims() + { + return isset($this->claims); + } + public function clearClaims() + { + unset($this->claims); + } + /** + * Structured claims presented with the credential. JWTs include + * `{key: value}` pairs for standard and private claims. The following + * is a subset of the standard required and optional claims that would + * typically be presented for a Google-based JWT: + * {'iss': 'accounts.google.com', + * 'sub': '113289723416554971153', + * 'aud': ['123456789012', 'pubsub.googleapis.com'], + * 'azp': '123456789012.apps.googleusercontent.com', + * 'email': 'jsmith@example.com', + * 'iat': 1353601026, + * 'exp': 1353604926} + * SAML assertions are similarly specified, but with an identity provider + * dependent structure. + * + * Generated from protobuf field .google.protobuf.Struct claims = 4; + * @param \Google\Protobuf\Struct $var + * @return $this + */ + public function setClaims($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Struct::class); + $this->claims = $var; + return $this; + } + /** + * A list of access level resource names that allow resources to be + * accessed by authenticated requester. It is part of Secure GCP processing + * for the incoming request. An access level string has the format: + * "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}" + * Example: + * "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL" + * + * Generated from protobuf field repeated string access_levels = 5; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAccessLevels() + { + return $this->access_levels; + } + /** + * A list of access level resource names that allow resources to be + * accessed by authenticated requester. It is part of Secure GCP processing + * for the incoming request. An access level string has the format: + * "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}" + * Example: + * "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL" + * + * Generated from protobuf field repeated string access_levels = 5; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAccessLevels($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->access_levels = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php new file mode 100644 index 00000000..8bff1b93 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Peer.php @@ -0,0 +1,204 @@ +google.rpc.context.AttributeContext.Peer + */ +class Peer extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The IP address of the peer. + * + * Generated from protobuf field string ip = 1; + */ + protected $ip = ''; + /** + * The network port of the peer. + * + * Generated from protobuf field int64 port = 2; + */ + protected $port = 0; + /** + * The labels associated with the peer. + * + * Generated from protobuf field map labels = 6; + */ + private $labels; + /** + * The identity of this peer. Similar to `Request.auth.principal`, but + * relative to the peer instead of the request. For example, the + * identity associated with a load balancer that forwarded the request. + * + * Generated from protobuf field string principal = 7; + */ + protected $principal = ''; + /** + * The CLDR country/region code associated with the above IP address. + * If the IP address is private, the `region_code` should reflect the + * physical location where this peer is running. + * + * Generated from protobuf field string region_code = 8; + */ + protected $region_code = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $ip + * The IP address of the peer. + * @type int|string $port + * The network port of the peer. + * @type array|\Google\Protobuf\Internal\MapField $labels + * The labels associated with the peer. + * @type string $principal + * The identity of this peer. Similar to `Request.auth.principal`, but + * relative to the peer instead of the request. For example, the + * identity associated with a load balancer that forwarded the request. + * @type string $region_code + * The CLDR country/region code associated with the above IP address. + * If the IP address is private, the `region_code` should reflect the + * physical location where this peer is running. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The IP address of the peer. + * + * Generated from protobuf field string ip = 1; + * @return string + */ + public function getIp() + { + return $this->ip; + } + /** + * The IP address of the peer. + * + * Generated from protobuf field string ip = 1; + * @param string $var + * @return $this + */ + public function setIp($var) + { + GPBUtil::checkString($var, True); + $this->ip = $var; + return $this; + } + /** + * The network port of the peer. + * + * Generated from protobuf field int64 port = 2; + * @return int|string + */ + public function getPort() + { + return $this->port; + } + /** + * The network port of the peer. + * + * Generated from protobuf field int64 port = 2; + * @param int|string $var + * @return $this + */ + public function setPort($var) + { + GPBUtil::checkInt64($var); + $this->port = $var; + return $this; + } + /** + * The labels associated with the peer. + * + * Generated from protobuf field map labels = 6; + * @return \Google\Protobuf\Internal\MapField + */ + public function getLabels() + { + return $this->labels; + } + /** + * The labels associated with the peer. + * + * Generated from protobuf field map labels = 6; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->labels = $arr; + return $this; + } + /** + * The identity of this peer. Similar to `Request.auth.principal`, but + * relative to the peer instead of the request. For example, the + * identity associated with a load balancer that forwarded the request. + * + * Generated from protobuf field string principal = 7; + * @return string + */ + public function getPrincipal() + { + return $this->principal; + } + /** + * The identity of this peer. Similar to `Request.auth.principal`, but + * relative to the peer instead of the request. For example, the + * identity associated with a load balancer that forwarded the request. + * + * Generated from protobuf field string principal = 7; + * @param string $var + * @return $this + */ + public function setPrincipal($var) + { + GPBUtil::checkString($var, True); + $this->principal = $var; + return $this; + } + /** + * The CLDR country/region code associated with the above IP address. + * If the IP address is private, the `region_code` should reflect the + * physical location where this peer is running. + * + * Generated from protobuf field string region_code = 8; + * @return string + */ + public function getRegionCode() + { + return $this->region_code; + } + /** + * The CLDR country/region code associated with the above IP address. + * If the IP address is private, the `region_code` should reflect the + * physical location where this peer is running. + * + * Generated from protobuf field string region_code = 8; + * @param string $var + * @return $this + */ + public function setRegionCode($var) + { + GPBUtil::checkString($var, True); + $this->region_code = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Request.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Request.php new file mode 100644 index 00000000..4cea5222 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Request.php @@ -0,0 +1,464 @@ +google.rpc.context.AttributeContext.Request + */ +class Request extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The unique ID for a request, which can be propagated to downstream + * systems. The ID should have low probability of collision + * within a single day for a specific service. + * + * Generated from protobuf field string id = 1; + */ + protected $id = ''; + /** + * The HTTP request method, such as `GET`, `POST`. + * + * Generated from protobuf field string method = 2; + */ + protected $method = ''; + /** + * The HTTP request headers. If multiple headers share the same key, they + * must be merged according to the HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + */ + private $headers; + /** + * The HTTP URL path, excluding the query parameters. + * + * Generated from protobuf field string path = 4; + */ + protected $path = ''; + /** + * The HTTP request `Host` header value. + * + * Generated from protobuf field string host = 5; + */ + protected $host = ''; + /** + * The HTTP URL scheme, such as `http` and `https`. + * + * Generated from protobuf field string scheme = 6; + */ + protected $scheme = ''; + /** + * The HTTP URL query in the format of `name1=value1&name2=value2`, as it + * appears in the first line of the HTTP request. No decoding is performed. + * + * Generated from protobuf field string query = 7; + */ + protected $query = ''; + /** + * The timestamp when the `destination` service receives the last byte of + * the request. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 9; + */ + protected $time = null; + /** + * The HTTP request size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 10; + */ + protected $size = 0; + /** + * The network protocol used with the request, such as "http/1.1", + * "spdy/3", "h2", "h2c", "webrtc", "tcp", "udp", "quic". See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for details. + * + * Generated from protobuf field string protocol = 11; + */ + protected $protocol = ''; + /** + * A special parameter for request reason. It is used by security systems + * to associate auditing information with a request. + * + * Generated from protobuf field string reason = 12; + */ + protected $reason = ''; + /** + * The request authentication. May be absent for unauthenticated requests. + * Derived from the HTTP request `Authorization` header or equivalent. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Auth auth = 13; + */ + protected $auth = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $id + * The unique ID for a request, which can be propagated to downstream + * systems. The ID should have low probability of collision + * within a single day for a specific service. + * @type string $method + * The HTTP request method, such as `GET`, `POST`. + * @type array|\Google\Protobuf\Internal\MapField $headers + * The HTTP request headers. If multiple headers share the same key, they + * must be merged according to the HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * @type string $path + * The HTTP URL path, excluding the query parameters. + * @type string $host + * The HTTP request `Host` header value. + * @type string $scheme + * The HTTP URL scheme, such as `http` and `https`. + * @type string $query + * The HTTP URL query in the format of `name1=value1&name2=value2`, as it + * appears in the first line of the HTTP request. No decoding is performed. + * @type \Google\Protobuf\Timestamp $time + * The timestamp when the `destination` service receives the last byte of + * the request. + * @type int|string $size + * The HTTP request size in bytes. If unknown, it must be -1. + * @type string $protocol + * The network protocol used with the request, such as "http/1.1", + * "spdy/3", "h2", "h2c", "webrtc", "tcp", "udp", "quic". See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for details. + * @type string $reason + * A special parameter for request reason. It is used by security systems + * to associate auditing information with a request. + * @type \Google\Rpc\Context\AttributeContext\Auth $auth + * The request authentication. May be absent for unauthenticated requests. + * Derived from the HTTP request `Authorization` header or equivalent. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The unique ID for a request, which can be propagated to downstream + * systems. The ID should have low probability of collision + * within a single day for a specific service. + * + * Generated from protobuf field string id = 1; + * @return string + */ + public function getId() + { + return $this->id; + } + /** + * The unique ID for a request, which can be propagated to downstream + * systems. The ID should have low probability of collision + * within a single day for a specific service. + * + * Generated from protobuf field string id = 1; + * @param string $var + * @return $this + */ + public function setId($var) + { + GPBUtil::checkString($var, True); + $this->id = $var; + return $this; + } + /** + * The HTTP request method, such as `GET`, `POST`. + * + * Generated from protobuf field string method = 2; + * @return string + */ + public function getMethod() + { + return $this->method; + } + /** + * The HTTP request method, such as `GET`, `POST`. + * + * Generated from protobuf field string method = 2; + * @param string $var + * @return $this + */ + public function setMethod($var) + { + GPBUtil::checkString($var, True); + $this->method = $var; + return $this; + } + /** + * The HTTP request headers. If multiple headers share the same key, they + * must be merged according to the HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + * @return \Google\Protobuf\Internal\MapField + */ + public function getHeaders() + { + return $this->headers; + } + /** + * The HTTP request headers. If multiple headers share the same key, they + * must be merged according to the HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setHeaders($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->headers = $arr; + return $this; + } + /** + * The HTTP URL path, excluding the query parameters. + * + * Generated from protobuf field string path = 4; + * @return string + */ + public function getPath() + { + return $this->path; + } + /** + * The HTTP URL path, excluding the query parameters. + * + * Generated from protobuf field string path = 4; + * @param string $var + * @return $this + */ + public function setPath($var) + { + GPBUtil::checkString($var, True); + $this->path = $var; + return $this; + } + /** + * The HTTP request `Host` header value. + * + * Generated from protobuf field string host = 5; + * @return string + */ + public function getHost() + { + return $this->host; + } + /** + * The HTTP request `Host` header value. + * + * Generated from protobuf field string host = 5; + * @param string $var + * @return $this + */ + public function setHost($var) + { + GPBUtil::checkString($var, True); + $this->host = $var; + return $this; + } + /** + * The HTTP URL scheme, such as `http` and `https`. + * + * Generated from protobuf field string scheme = 6; + * @return string + */ + public function getScheme() + { + return $this->scheme; + } + /** + * The HTTP URL scheme, such as `http` and `https`. + * + * Generated from protobuf field string scheme = 6; + * @param string $var + * @return $this + */ + public function setScheme($var) + { + GPBUtil::checkString($var, True); + $this->scheme = $var; + return $this; + } + /** + * The HTTP URL query in the format of `name1=value1&name2=value2`, as it + * appears in the first line of the HTTP request. No decoding is performed. + * + * Generated from protobuf field string query = 7; + * @return string + */ + public function getQuery() + { + return $this->query; + } + /** + * The HTTP URL query in the format of `name1=value1&name2=value2`, as it + * appears in the first line of the HTTP request. No decoding is performed. + * + * Generated from protobuf field string query = 7; + * @param string $var + * @return $this + */ + public function setQuery($var) + { + GPBUtil::checkString($var, True); + $this->query = $var; + return $this; + } + /** + * The timestamp when the `destination` service receives the last byte of + * the request. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 9; + * @return \Google\Protobuf\Timestamp|null + */ + public function getTime() + { + return $this->time; + } + public function hasTime() + { + return isset($this->time); + } + public function clearTime() + { + unset($this->time); + } + /** + * The timestamp when the `destination` service receives the last byte of + * the request. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 9; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->time = $var; + return $this; + } + /** + * The HTTP request size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 10; + * @return int|string + */ + public function getSize() + { + return $this->size; + } + /** + * The HTTP request size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 10; + * @param int|string $var + * @return $this + */ + public function setSize($var) + { + GPBUtil::checkInt64($var); + $this->size = $var; + return $this; + } + /** + * The network protocol used with the request, such as "http/1.1", + * "spdy/3", "h2", "h2c", "webrtc", "tcp", "udp", "quic". See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for details. + * + * Generated from protobuf field string protocol = 11; + * @return string + */ + public function getProtocol() + { + return $this->protocol; + } + /** + * The network protocol used with the request, such as "http/1.1", + * "spdy/3", "h2", "h2c", "webrtc", "tcp", "udp", "quic". See + * https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids + * for details. + * + * Generated from protobuf field string protocol = 11; + * @param string $var + * @return $this + */ + public function setProtocol($var) + { + GPBUtil::checkString($var, True); + $this->protocol = $var; + return $this; + } + /** + * A special parameter for request reason. It is used by security systems + * to associate auditing information with a request. + * + * Generated from protobuf field string reason = 12; + * @return string + */ + public function getReason() + { + return $this->reason; + } + /** + * A special parameter for request reason. It is used by security systems + * to associate auditing information with a request. + * + * Generated from protobuf field string reason = 12; + * @param string $var + * @return $this + */ + public function setReason($var) + { + GPBUtil::checkString($var, True); + $this->reason = $var; + return $this; + } + /** + * The request authentication. May be absent for unauthenticated requests. + * Derived from the HTTP request `Authorization` header or equivalent. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Auth auth = 13; + * @return \Google\Rpc\Context\AttributeContext\Auth|null + */ + public function getAuth() + { + return $this->auth; + } + public function hasAuth() + { + return isset($this->auth); + } + public function clearAuth() + { + unset($this->auth); + } + /** + * The request authentication. May be absent for unauthenticated requests. + * Derived from the HTTP request `Authorization` header or equivalent. + * + * Generated from protobuf field .google.rpc.context.AttributeContext.Auth auth = 13; + * @param \Google\Rpc\Context\AttributeContext\Auth $var + * @return $this + */ + public function setAuth($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Context\AttributeContext\Auth::class); + $this->auth = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php new file mode 100644 index 00000000..955a9a01 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Resource.php @@ -0,0 +1,564 @@ +google.rpc.context.AttributeContext.Resource + */ +class Resource extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The name of the service that this resource belongs to, such as + * `pubsub.googleapis.com`. The service may be different from the DNS + * hostname that actually serves the request. + * + * Generated from protobuf field string service = 1; + */ + protected $service = ''; + /** + * The stable identifier (name) of a resource on the `service`. A resource + * can be logically identified as "//{resource.service}/{resource.name}". + * The differences between a resource name and a URI are: + * * Resource name is a logical identifier, independent of network + * protocol and API version. For example, + * `//pubsub.googleapis.com/projects/123/topics/news-feed`. + * * URI often includes protocol and version information, so it can + * be used directly by applications. For example, + * `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`. + * See https://cloud.google.com/apis/design/resource_names for details. + * + * Generated from protobuf field string name = 2; + */ + protected $name = ''; + /** + * The type of the resource. The syntax is platform-specific because + * different platforms define their resources differently. + * For Google APIs, the type format must be "{service}/{kind}", such as + * "pubsub.googleapis.com/Topic". + * + * Generated from protobuf field string type = 3; + */ + protected $type = ''; + /** + * The labels or tags on the resource, such as AWS resource tags and + * Kubernetes resource labels. + * + * Generated from protobuf field map labels = 4; + */ + private $labels; + /** + * The unique identifier of the resource. UID is unique in the time + * and space for this resource within the scope of the service. It is + * typically generated by the server on successful creation of a resource + * and must not be changed. UID is used to uniquely identify resources + * with resource name reuses. This should be a UUID4. + * + * Generated from protobuf field string uid = 5; + */ + protected $uid = ''; + /** + * Annotations is an unstructured key-value map stored with a resource that + * may be set by external tools to store and retrieve arbitrary metadata. + * They are not queryable and should be preserved when modifying objects. + * More info: https://kubernetes.io/docs/user-guide/annotations + * + * Generated from protobuf field map annotations = 6; + */ + private $annotations; + /** + * Mutable. The display name set by clients. Must be <= 63 characters. + * + * Generated from protobuf field string display_name = 7; + */ + protected $display_name = ''; + /** + * Output only. The timestamp when the resource was created. This may + * be either the time creation was initiated or when it was completed. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 8; + */ + protected $create_time = null; + /** + * Output only. The timestamp when the resource was last updated. Any + * change to the resource made by users must refresh this value. + * Changes to a resource made by the service should refresh this value. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 9; + */ + protected $update_time = null; + /** + * Output only. The timestamp when the resource was deleted. + * If the resource is not deleted, this must be empty. + * + * Generated from protobuf field .google.protobuf.Timestamp delete_time = 10; + */ + protected $delete_time = null; + /** + * Output only. An opaque value that uniquely identifies a version or + * generation of a resource. It can be used to confirm that the client + * and server agree on the ordering of a resource being written. + * + * Generated from protobuf field string etag = 11; + */ + protected $etag = ''; + /** + * Immutable. The location of the resource. The location encoding is + * specific to the service provider, and new encoding may be introduced + * as the service evolves. + * For Google Cloud products, the encoding is what is used by Google Cloud + * APIs, such as `us-east1`, `aws-us-east-1`, and `azure-eastus2`. The + * semantics of `location` is identical to the + * `cloud.googleapis.com/location` label used by some Google Cloud APIs. + * + * Generated from protobuf field string location = 12; + */ + protected $location = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $service + * The name of the service that this resource belongs to, such as + * `pubsub.googleapis.com`. The service may be different from the DNS + * hostname that actually serves the request. + * @type string $name + * The stable identifier (name) of a resource on the `service`. A resource + * can be logically identified as "//{resource.service}/{resource.name}". + * The differences between a resource name and a URI are: + * * Resource name is a logical identifier, independent of network + * protocol and API version. For example, + * `//pubsub.googleapis.com/projects/123/topics/news-feed`. + * * URI often includes protocol and version information, so it can + * be used directly by applications. For example, + * `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`. + * See https://cloud.google.com/apis/design/resource_names for details. + * @type string $type + * The type of the resource. The syntax is platform-specific because + * different platforms define their resources differently. + * For Google APIs, the type format must be "{service}/{kind}", such as + * "pubsub.googleapis.com/Topic". + * @type array|\Google\Protobuf\Internal\MapField $labels + * The labels or tags on the resource, such as AWS resource tags and + * Kubernetes resource labels. + * @type string $uid + * The unique identifier of the resource. UID is unique in the time + * and space for this resource within the scope of the service. It is + * typically generated by the server on successful creation of a resource + * and must not be changed. UID is used to uniquely identify resources + * with resource name reuses. This should be a UUID4. + * @type array|\Google\Protobuf\Internal\MapField $annotations + * Annotations is an unstructured key-value map stored with a resource that + * may be set by external tools to store and retrieve arbitrary metadata. + * They are not queryable and should be preserved when modifying objects. + * More info: https://kubernetes.io/docs/user-guide/annotations + * @type string $display_name + * Mutable. The display name set by clients. Must be <= 63 characters. + * @type \Google\Protobuf\Timestamp $create_time + * Output only. The timestamp when the resource was created. This may + * be either the time creation was initiated or when it was completed. + * @type \Google\Protobuf\Timestamp $update_time + * Output only. The timestamp when the resource was last updated. Any + * change to the resource made by users must refresh this value. + * Changes to a resource made by the service should refresh this value. + * @type \Google\Protobuf\Timestamp $delete_time + * Output only. The timestamp when the resource was deleted. + * If the resource is not deleted, this must be empty. + * @type string $etag + * Output only. An opaque value that uniquely identifies a version or + * generation of a resource. It can be used to confirm that the client + * and server agree on the ordering of a resource being written. + * @type string $location + * Immutable. The location of the resource. The location encoding is + * specific to the service provider, and new encoding may be introduced + * as the service evolves. + * For Google Cloud products, the encoding is what is used by Google Cloud + * APIs, such as `us-east1`, `aws-us-east-1`, and `azure-eastus2`. The + * semantics of `location` is identical to the + * `cloud.googleapis.com/location` label used by some Google Cloud APIs. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The name of the service that this resource belongs to, such as + * `pubsub.googleapis.com`. The service may be different from the DNS + * hostname that actually serves the request. + * + * Generated from protobuf field string service = 1; + * @return string + */ + public function getService() + { + return $this->service; + } + /** + * The name of the service that this resource belongs to, such as + * `pubsub.googleapis.com`. The service may be different from the DNS + * hostname that actually serves the request. + * + * Generated from protobuf field string service = 1; + * @param string $var + * @return $this + */ + public function setService($var) + { + GPBUtil::checkString($var, True); + $this->service = $var; + return $this; + } + /** + * The stable identifier (name) of a resource on the `service`. A resource + * can be logically identified as "//{resource.service}/{resource.name}". + * The differences between a resource name and a URI are: + * * Resource name is a logical identifier, independent of network + * protocol and API version. For example, + * `//pubsub.googleapis.com/projects/123/topics/news-feed`. + * * URI often includes protocol and version information, so it can + * be used directly by applications. For example, + * `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`. + * See https://cloud.google.com/apis/design/resource_names for details. + * + * Generated from protobuf field string name = 2; + * @return string + */ + public function getName() + { + return $this->name; + } + /** + * The stable identifier (name) of a resource on the `service`. A resource + * can be logically identified as "//{resource.service}/{resource.name}". + * The differences between a resource name and a URI are: + * * Resource name is a logical identifier, independent of network + * protocol and API version. For example, + * `//pubsub.googleapis.com/projects/123/topics/news-feed`. + * * URI often includes protocol and version information, so it can + * be used directly by applications. For example, + * `https://pubsub.googleapis.com/v1/projects/123/topics/news-feed`. + * See https://cloud.google.com/apis/design/resource_names for details. + * + * Generated from protobuf field string name = 2; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + return $this; + } + /** + * The type of the resource. The syntax is platform-specific because + * different platforms define their resources differently. + * For Google APIs, the type format must be "{service}/{kind}", such as + * "pubsub.googleapis.com/Topic". + * + * Generated from protobuf field string type = 3; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * The type of the resource. The syntax is platform-specific because + * different platforms define their resources differently. + * For Google APIs, the type format must be "{service}/{kind}", such as + * "pubsub.googleapis.com/Topic". + * + * Generated from protobuf field string type = 3; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * The labels or tags on the resource, such as AWS resource tags and + * Kubernetes resource labels. + * + * Generated from protobuf field map labels = 4; + * @return \Google\Protobuf\Internal\MapField + */ + public function getLabels() + { + return $this->labels; + } + /** + * The labels or tags on the resource, such as AWS resource tags and + * Kubernetes resource labels. + * + * Generated from protobuf field map labels = 4; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setLabels($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->labels = $arr; + return $this; + } + /** + * The unique identifier of the resource. UID is unique in the time + * and space for this resource within the scope of the service. It is + * typically generated by the server on successful creation of a resource + * and must not be changed. UID is used to uniquely identify resources + * with resource name reuses. This should be a UUID4. + * + * Generated from protobuf field string uid = 5; + * @return string + */ + public function getUid() + { + return $this->uid; + } + /** + * The unique identifier of the resource. UID is unique in the time + * and space for this resource within the scope of the service. It is + * typically generated by the server on successful creation of a resource + * and must not be changed. UID is used to uniquely identify resources + * with resource name reuses. This should be a UUID4. + * + * Generated from protobuf field string uid = 5; + * @param string $var + * @return $this + */ + public function setUid($var) + { + GPBUtil::checkString($var, True); + $this->uid = $var; + return $this; + } + /** + * Annotations is an unstructured key-value map stored with a resource that + * may be set by external tools to store and retrieve arbitrary metadata. + * They are not queryable and should be preserved when modifying objects. + * More info: https://kubernetes.io/docs/user-guide/annotations + * + * Generated from protobuf field map annotations = 6; + * @return \Google\Protobuf\Internal\MapField + */ + public function getAnnotations() + { + return $this->annotations; + } + /** + * Annotations is an unstructured key-value map stored with a resource that + * may be set by external tools to store and retrieve arbitrary metadata. + * They are not queryable and should be preserved when modifying objects. + * More info: https://kubernetes.io/docs/user-guide/annotations + * + * Generated from protobuf field map annotations = 6; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setAnnotations($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->annotations = $arr; + return $this; + } + /** + * Mutable. The display name set by clients. Must be <= 63 characters. + * + * Generated from protobuf field string display_name = 7; + * @return string + */ + public function getDisplayName() + { + return $this->display_name; + } + /** + * Mutable. The display name set by clients. Must be <= 63 characters. + * + * Generated from protobuf field string display_name = 7; + * @param string $var + * @return $this + */ + public function setDisplayName($var) + { + GPBUtil::checkString($var, True); + $this->display_name = $var; + return $this; + } + /** + * Output only. The timestamp when the resource was created. This may + * be either the time creation was initiated or when it was completed. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 8; + * @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 resource was created. This may + * be either the time creation was initiated or when it was completed. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 8; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setCreateTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->create_time = $var; + return $this; + } + /** + * Output only. The timestamp when the resource was last updated. Any + * change to the resource made by users must refresh this value. + * Changes to a resource made by the service should refresh this value. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 9; + * @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 timestamp when the resource was last updated. Any + * change to the resource made by users must refresh this value. + * Changes to a resource made by the service should refresh this value. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 9; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setUpdateTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->update_time = $var; + return $this; + } + /** + * Output only. The timestamp when the resource was deleted. + * If the resource is not deleted, this must be empty. + * + * Generated from protobuf field .google.protobuf.Timestamp delete_time = 10; + * @return \Google\Protobuf\Timestamp|null + */ + public function getDeleteTime() + { + return $this->delete_time; + } + public function hasDeleteTime() + { + return isset($this->delete_time); + } + public function clearDeleteTime() + { + unset($this->delete_time); + } + /** + * Output only. The timestamp when the resource was deleted. + * If the resource is not deleted, this must be empty. + * + * Generated from protobuf field .google.protobuf.Timestamp delete_time = 10; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setDeleteTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->delete_time = $var; + return $this; + } + /** + * Output only. An opaque value that uniquely identifies a version or + * generation of a resource. It can be used to confirm that the client + * and server agree on the ordering of a resource being written. + * + * Generated from protobuf field string etag = 11; + * @return string + */ + public function getEtag() + { + return $this->etag; + } + /** + * Output only. An opaque value that uniquely identifies a version or + * generation of a resource. It can be used to confirm that the client + * and server agree on the ordering of a resource being written. + * + * Generated from protobuf field string etag = 11; + * @param string $var + * @return $this + */ + public function setEtag($var) + { + GPBUtil::checkString($var, True); + $this->etag = $var; + return $this; + } + /** + * Immutable. The location of the resource. The location encoding is + * specific to the service provider, and new encoding may be introduced + * as the service evolves. + * For Google Cloud products, the encoding is what is used by Google Cloud + * APIs, such as `us-east1`, `aws-us-east-1`, and `azure-eastus2`. The + * semantics of `location` is identical to the + * `cloud.googleapis.com/location` label used by some Google Cloud APIs. + * + * Generated from protobuf field string location = 12; + * @return string + */ + public function getLocation() + { + return $this->location; + } + /** + * Immutable. The location of the resource. The location encoding is + * specific to the service provider, and new encoding may be introduced + * as the service evolves. + * For Google Cloud products, the encoding is what is used by Google Cloud + * APIs, such as `us-east1`, `aws-us-east-1`, and `azure-eastus2`. The + * semantics of `location` is identical to the + * `cloud.googleapis.com/location` label used by some Google Cloud APIs. + * + * Generated from protobuf field string location = 12; + * @param string $var + * @return $this + */ + public function setLocation($var) + { + GPBUtil::checkString($var, True); + $this->location = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Response.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Response.php new file mode 100644 index 00000000..c9948369 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AttributeContext/Response.php @@ -0,0 +1,226 @@ +google.rpc.context.AttributeContext.Response + */ +class Response extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The HTTP response status code, such as `200` and `404`. + * + * Generated from protobuf field int64 code = 1; + */ + protected $code = 0; + /** + * The HTTP response size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 2; + */ + protected $size = 0; + /** + * The HTTP response headers. If multiple headers share the same key, they + * must be merged according to HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + */ + private $headers; + /** + * The timestamp when the `destination` service sends the last byte of + * the response. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 4; + */ + protected $time = null; + /** + * The amount of time it takes the backend service to fully respond to a + * request. Measured from when the destination service starts to send the + * request to the backend until when the destination service receives the + * complete response from the backend. + * + * Generated from protobuf field .google.protobuf.Duration backend_latency = 5; + */ + protected $backend_latency = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $code + * The HTTP response status code, such as `200` and `404`. + * @type int|string $size + * The HTTP response size in bytes. If unknown, it must be -1. + * @type array|\Google\Protobuf\Internal\MapField $headers + * The HTTP response headers. If multiple headers share the same key, they + * must be merged according to HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * @type \Google\Protobuf\Timestamp $time + * The timestamp when the `destination` service sends the last byte of + * the response. + * @type \Google\Protobuf\Duration $backend_latency + * The amount of time it takes the backend service to fully respond to a + * request. Measured from when the destination service starts to send the + * request to the backend until when the destination service receives the + * complete response from the backend. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AttributeContext::initOnce(); + parent::__construct($data); + } + /** + * The HTTP response status code, such as `200` and `404`. + * + * Generated from protobuf field int64 code = 1; + * @return int|string + */ + public function getCode() + { + return $this->code; + } + /** + * The HTTP response status code, such as `200` and `404`. + * + * Generated from protobuf field int64 code = 1; + * @param int|string $var + * @return $this + */ + public function setCode($var) + { + GPBUtil::checkInt64($var); + $this->code = $var; + return $this; + } + /** + * The HTTP response size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 2; + * @return int|string + */ + public function getSize() + { + return $this->size; + } + /** + * The HTTP response size in bytes. If unknown, it must be -1. + * + * Generated from protobuf field int64 size = 2; + * @param int|string $var + * @return $this + */ + public function setSize($var) + { + GPBUtil::checkInt64($var); + $this->size = $var; + return $this; + } + /** + * The HTTP response headers. If multiple headers share the same key, they + * must be merged according to HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + * @return \Google\Protobuf\Internal\MapField + */ + public function getHeaders() + { + return $this->headers; + } + /** + * The HTTP response headers. If multiple headers share the same key, they + * must be merged according to HTTP spec. All header keys must be + * lowercased, because HTTP header keys are case-insensitive. + * + * Generated from protobuf field map headers = 3; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setHeaders($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->headers = $arr; + return $this; + } + /** + * The timestamp when the `destination` service sends the last byte of + * the response. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 4; + * @return \Google\Protobuf\Timestamp|null + */ + public function getTime() + { + return $this->time; + } + public function hasTime() + { + return isset($this->time); + } + public function clearTime() + { + unset($this->time); + } + /** + * The timestamp when the `destination` service sends the last byte of + * the response. + * + * Generated from protobuf field .google.protobuf.Timestamp time = 4; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->time = $var; + return $this; + } + /** + * The amount of time it takes the backend service to fully respond to a + * request. Measured from when the destination service starts to send the + * request to the backend until when the destination service receives the + * complete response from the backend. + * + * Generated from protobuf field .google.protobuf.Duration backend_latency = 5; + * @return \Google\Protobuf\Duration|null + */ + public function getBackendLatency() + { + return $this->backend_latency; + } + public function hasBackendLatency() + { + return isset($this->backend_latency); + } + public function clearBackendLatency() + { + unset($this->backend_latency); + } + /** + * The amount of time it takes the backend service to fully respond to a + * request. Measured from when the destination service starts to send the + * request to the backend until when the destination service receives the + * complete response from the backend. + * + * Generated from protobuf field .google.protobuf.Duration backend_latency = 5; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setBackendLatency($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->backend_latency = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Context/AuditContext.php b/vendor/Gcp/google/common-protos/src/Rpc/Context/AuditContext.php new file mode 100644 index 00000000..eaea6f85 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Context/AuditContext.php @@ -0,0 +1,225 @@ +google.rpc.context.AuditContext + */ +class AuditContext extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Serialized audit log. + * + * Generated from protobuf field bytes audit_log = 1; + */ + protected $audit_log = ''; + /** + * An API request message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_request = 2; + */ + protected $scrubbed_request = null; + /** + * An API response message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_response = 3; + */ + protected $scrubbed_response = null; + /** + * Number of scrubbed response items. + * + * Generated from protobuf field int32 scrubbed_response_item_count = 4; + */ + protected $scrubbed_response_item_count = 0; + /** + * Audit resource name which is scrubbed. + * + * Generated from protobuf field string target_resource = 5; + */ + protected $target_resource = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $audit_log + * Serialized audit log. + * @type \Google\Protobuf\Struct $scrubbed_request + * An API request message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * @type \Google\Protobuf\Struct $scrubbed_response + * An API response message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * @type int $scrubbed_response_item_count + * Number of scrubbed response items. + * @type string $target_resource + * Audit resource name which is scrubbed. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Context\AuditContext::initOnce(); + parent::__construct($data); + } + /** + * Serialized audit log. + * + * Generated from protobuf field bytes audit_log = 1; + * @return string + */ + public function getAuditLog() + { + return $this->audit_log; + } + /** + * Serialized audit log. + * + * Generated from protobuf field bytes audit_log = 1; + * @param string $var + * @return $this + */ + public function setAuditLog($var) + { + GPBUtil::checkString($var, False); + $this->audit_log = $var; + return $this; + } + /** + * An API request message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_request = 2; + * @return \Google\Protobuf\Struct|null + */ + public function getScrubbedRequest() + { + return $this->scrubbed_request; + } + public function hasScrubbedRequest() + { + return isset($this->scrubbed_request); + } + public function clearScrubbedRequest() + { + unset($this->scrubbed_request); + } + /** + * An API request message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_request = 2; + * @param \Google\Protobuf\Struct $var + * @return $this + */ + public function setScrubbedRequest($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Struct::class); + $this->scrubbed_request = $var; + return $this; + } + /** + * An API response message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_response = 3; + * @return \Google\Protobuf\Struct|null + */ + public function getScrubbedResponse() + { + return $this->scrubbed_response; + } + public function hasScrubbedResponse() + { + return isset($this->scrubbed_response); + } + public function clearScrubbedResponse() + { + unset($this->scrubbed_response); + } + /** + * An API response message that is scrubbed based on the method annotation. + * This field should only be filled if audit_log field is present. + * Service Control will use this to assemble a complete log for Cloud Audit + * Logs and Google internal audit logs. + * + * Generated from protobuf field .google.protobuf.Struct scrubbed_response = 3; + * @param \Google\Protobuf\Struct $var + * @return $this + */ + public function setScrubbedResponse($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Struct::class); + $this->scrubbed_response = $var; + return $this; + } + /** + * Number of scrubbed response items. + * + * Generated from protobuf field int32 scrubbed_response_item_count = 4; + * @return int + */ + public function getScrubbedResponseItemCount() + { + return $this->scrubbed_response_item_count; + } + /** + * Number of scrubbed response items. + * + * Generated from protobuf field int32 scrubbed_response_item_count = 4; + * @param int $var + * @return $this + */ + public function setScrubbedResponseItemCount($var) + { + GPBUtil::checkInt32($var); + $this->scrubbed_response_item_count = $var; + return $this; + } + /** + * Audit resource name which is scrubbed. + * + * Generated from protobuf field string target_resource = 5; + * @return string + */ + public function getTargetResource() + { + return $this->target_resource; + } + /** + * Audit resource name which is scrubbed. + * + * Generated from protobuf field string target_resource = 5; + * @param string $var + * @return $this + */ + public function setTargetResource($var) + { + GPBUtil::checkString($var, True); + $this->target_resource = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/DebugInfo.php b/vendor/Gcp/google/common-protos/src/Rpc/DebugInfo.php new file mode 100644 index 00000000..1ba97987 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/DebugInfo.php @@ -0,0 +1,92 @@ +google.rpc.DebugInfo + */ +class DebugInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The stack trace entries indicating where the error occurred. + * + * Generated from protobuf field repeated string stack_entries = 1; + */ + private $stack_entries; + /** + * Additional debugging information provided by the server. + * + * Generated from protobuf field string detail = 2; + */ + protected $detail = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array|\Google\Protobuf\Internal\RepeatedField $stack_entries + * The stack trace entries indicating where the error occurred. + * @type string $detail + * Additional debugging information provided by the server. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * The stack trace entries indicating where the error occurred. + * + * Generated from protobuf field repeated string stack_entries = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getStackEntries() + { + return $this->stack_entries; + } + /** + * The stack trace entries indicating where the error occurred. + * + * Generated from protobuf field repeated string stack_entries = 1; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setStackEntries($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->stack_entries = $arr; + return $this; + } + /** + * Additional debugging information provided by the server. + * + * Generated from protobuf field string detail = 2; + * @return string + */ + public function getDetail() + { + return $this->detail; + } + /** + * Additional debugging information provided by the server. + * + * Generated from protobuf field string detail = 2; + * @param string $var + * @return $this + */ + public function setDetail($var) + { + GPBUtil::checkString($var, True); + $this->detail = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/ErrorInfo.php b/vendor/Gcp/google/common-protos/src/Rpc/ErrorInfo.php new file mode 100644 index 00000000..73dd012b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/ErrorInfo.php @@ -0,0 +1,201 @@ +google.rpc.ErrorInfo + */ +class ErrorInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The reason of the error. This is a constant value that identifies the + * proximate cause of the error. Error reasons are unique within a particular + * domain of errors. This should be at most 63 characters and match a + * regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents + * UPPER_SNAKE_CASE. + * + * Generated from protobuf field string reason = 1; + */ + protected $reason = ''; + /** + * The logical grouping to which the "reason" belongs. The error domain + * is typically the registered service name of the tool or product that + * generates the error. Example: "pubsub.googleapis.com". If the error is + * generated by some common infrastructure, the error domain must be a + * globally unique value that identifies the infrastructure. For Google API + * infrastructure, the error domain is "googleapis.com". + * + * Generated from protobuf field string domain = 2; + */ + protected $domain = ''; + /** + * Additional structured details about this error. + * Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in + * length. When identifying the current value of an exceeded limit, the units + * should be contained in the key, not the value. For example, rather than + * {"instanceLimit": "100/request"}, should be returned as, + * {"instanceLimitPerRequest": "100"}, if the client exceeds the number of + * instances that can be created in a single (batch) request. + * + * Generated from protobuf field map metadata = 3; + */ + private $metadata; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $reason + * The reason of the error. This is a constant value that identifies the + * proximate cause of the error. Error reasons are unique within a particular + * domain of errors. This should be at most 63 characters and match a + * regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents + * UPPER_SNAKE_CASE. + * @type string $domain + * The logical grouping to which the "reason" belongs. The error domain + * is typically the registered service name of the tool or product that + * generates the error. Example: "pubsub.googleapis.com". If the error is + * generated by some common infrastructure, the error domain must be a + * globally unique value that identifies the infrastructure. For Google API + * infrastructure, the error domain is "googleapis.com". + * @type array|\Google\Protobuf\Internal\MapField $metadata + * Additional structured details about this error. + * Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in + * length. When identifying the current value of an exceeded limit, the units + * should be contained in the key, not the value. For example, rather than + * {"instanceLimit": "100/request"}, should be returned as, + * {"instanceLimitPerRequest": "100"}, if the client exceeds the number of + * instances that can be created in a single (batch) request. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * The reason of the error. This is a constant value that identifies the + * proximate cause of the error. Error reasons are unique within a particular + * domain of errors. This should be at most 63 characters and match a + * regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents + * UPPER_SNAKE_CASE. + * + * Generated from protobuf field string reason = 1; + * @return string + */ + public function getReason() + { + return $this->reason; + } + /** + * The reason of the error. This is a constant value that identifies the + * proximate cause of the error. Error reasons are unique within a particular + * domain of errors. This should be at most 63 characters and match a + * regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents + * UPPER_SNAKE_CASE. + * + * Generated from protobuf field string reason = 1; + * @param string $var + * @return $this + */ + public function setReason($var) + { + GPBUtil::checkString($var, True); + $this->reason = $var; + return $this; + } + /** + * The logical grouping to which the "reason" belongs. The error domain + * is typically the registered service name of the tool or product that + * generates the error. Example: "pubsub.googleapis.com". If the error is + * generated by some common infrastructure, the error domain must be a + * globally unique value that identifies the infrastructure. For Google API + * infrastructure, the error domain is "googleapis.com". + * + * Generated from protobuf field string domain = 2; + * @return string + */ + public function getDomain() + { + return $this->domain; + } + /** + * The logical grouping to which the "reason" belongs. The error domain + * is typically the registered service name of the tool or product that + * generates the error. Example: "pubsub.googleapis.com". If the error is + * generated by some common infrastructure, the error domain must be a + * globally unique value that identifies the infrastructure. For Google API + * infrastructure, the error domain is "googleapis.com". + * + * Generated from protobuf field string domain = 2; + * @param string $var + * @return $this + */ + public function setDomain($var) + { + GPBUtil::checkString($var, True); + $this->domain = $var; + return $this; + } + /** + * Additional structured details about this error. + * Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in + * length. When identifying the current value of an exceeded limit, the units + * should be contained in the key, not the value. For example, rather than + * {"instanceLimit": "100/request"}, should be returned as, + * {"instanceLimitPerRequest": "100"}, if the client exceeds the number of + * instances that can be created in a single (batch) request. + * + * Generated from protobuf field map metadata = 3; + * @return \Google\Protobuf\Internal\MapField + */ + public function getMetadata() + { + return $this->metadata; + } + /** + * Additional structured details about this error. + * Keys should match /[a-zA-Z0-9-_]/ and be limited to 64 characters in + * length. When identifying the current value of an exceeded limit, the units + * should be contained in the key, not the value. For example, rather than + * {"instanceLimit": "100/request"}, should be returned as, + * {"instanceLimitPerRequest": "100"}, if the client exceeds the number of + * instances that can be created in a single (batch) request. + * + * Generated from protobuf field map metadata = 3; + * @param array|\Google\Protobuf\Internal\MapField $var + * @return $this + */ + public function setMetadata($var) + { + $arr = GPBUtil::checkMapField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->metadata = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Help.php b/vendor/Gcp/google/common-protos/src/Rpc/Help.php new file mode 100644 index 00000000..1c8481ae --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Help.php @@ -0,0 +1,64 @@ +google.rpc.Help + */ +class Help extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * URL(s) pointing to additional information on handling the current error. + * + * Generated from protobuf field repeated .google.rpc.Help.Link links = 1; + */ + private $links; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Rpc\Help\Link>|\Google\Protobuf\Internal\RepeatedField $links + * URL(s) pointing to additional information on handling the current error. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * URL(s) pointing to additional information on handling the current error. + * + * Generated from protobuf field repeated .google.rpc.Help.Link links = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getLinks() + { + return $this->links; + } + /** + * URL(s) pointing to additional information on handling the current error. + * + * Generated from protobuf field repeated .google.rpc.Help.Link links = 1; + * @param array<\Google\Rpc\Help\Link>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setLinks($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Help\Link::class); + $this->links = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Help/Link.php b/vendor/Gcp/google/common-protos/src/Rpc/Help/Link.php new file mode 100644 index 00000000..931c3de9 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Help/Link.php @@ -0,0 +1,92 @@ +google.rpc.Help.Link + */ +class Link extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Describes what the link offers. + * + * Generated from protobuf field string description = 1; + */ + protected $description = ''; + /** + * The URL of the link. + * + * Generated from protobuf field string url = 2; + */ + protected $url = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $description + * Describes what the link offers. + * @type string $url + * The URL of the link. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * Describes what the link offers. + * + * Generated from protobuf field string description = 1; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Describes what the link offers. + * + * Generated from protobuf field string description = 1; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * The URL of the link. + * + * Generated from protobuf field string url = 2; + * @return string + */ + public function getUrl() + { + return $this->url; + } + /** + * The URL of the link. + * + * Generated from protobuf field string url = 2; + * @param string $var + * @return $this + */ + public function setUrl($var) + { + GPBUtil::checkString($var, True); + $this->url = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/LocalizedMessage.php b/vendor/Gcp/google/common-protos/src/Rpc/LocalizedMessage.php new file mode 100644 index 00000000..e079b348 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/LocalizedMessage.php @@ -0,0 +1,101 @@ +google.rpc.LocalizedMessage + */ +class LocalizedMessage extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The locale used following the specification defined at + * https://www.rfc-editor.org/rfc/bcp/bcp47.txt. + * Examples are: "en-US", "fr-CH", "es-MX" + * + * Generated from protobuf field string locale = 1; + */ + protected $locale = ''; + /** + * The localized error message in the above locale. + * + * Generated from protobuf field string message = 2; + */ + protected $message = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $locale + * The locale used following the specification defined at + * https://www.rfc-editor.org/rfc/bcp/bcp47.txt. + * Examples are: "en-US", "fr-CH", "es-MX" + * @type string $message + * The localized error message in the above locale. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * The locale used following the specification defined at + * https://www.rfc-editor.org/rfc/bcp/bcp47.txt. + * Examples are: "en-US", "fr-CH", "es-MX" + * + * Generated from protobuf field string locale = 1; + * @return string + */ + public function getLocale() + { + return $this->locale; + } + /** + * The locale used following the specification defined at + * https://www.rfc-editor.org/rfc/bcp/bcp47.txt. + * Examples are: "en-US", "fr-CH", "es-MX" + * + * Generated from protobuf field string locale = 1; + * @param string $var + * @return $this + */ + public function setLocale($var) + { + GPBUtil::checkString($var, True); + $this->locale = $var; + return $this; + } + /** + * The localized error message in the above locale. + * + * Generated from protobuf field string message = 2; + * @return string + */ + public function getMessage() + { + return $this->message; + } + /** + * The localized error message in the above locale. + * + * Generated from protobuf field string message = 2; + * @param string $var + * @return $this + */ + public function setMessage($var) + { + GPBUtil::checkString($var, True); + $this->message = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure.php b/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure.php new file mode 100644 index 00000000..8d92bb8c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure.php @@ -0,0 +1,64 @@ +google.rpc.PreconditionFailure + */ +class PreconditionFailure extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Describes all precondition violations. + * + * Generated from protobuf field repeated .google.rpc.PreconditionFailure.Violation violations = 1; + */ + private $violations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Rpc\PreconditionFailure\Violation>|\Google\Protobuf\Internal\RepeatedField $violations + * Describes all precondition violations. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * Describes all precondition violations. + * + * Generated from protobuf field repeated .google.rpc.PreconditionFailure.Violation violations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getViolations() + { + return $this->violations; + } + /** + * Describes all precondition violations. + * + * Generated from protobuf field repeated .google.rpc.PreconditionFailure.Violation violations = 1; + * @param array<\Google\Rpc\PreconditionFailure\Violation>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setViolations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\PreconditionFailure\Violation::class); + $this->violations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure/Violation.php b/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure/Violation.php new file mode 100644 index 00000000..5809e3cd --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/PreconditionFailure/Violation.php @@ -0,0 +1,147 @@ +google.rpc.PreconditionFailure.Violation + */ +class Violation extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The type of PreconditionFailure. We recommend using a service-specific + * enum type to define the supported precondition violation subjects. For + * example, "TOS" for "Terms of Service violation". + * + * Generated from protobuf field string type = 1; + */ + protected $type = ''; + /** + * The subject, relative to the type, that failed. + * For example, "google.com/cloud" relative to the "TOS" type would indicate + * which terms of service is being referenced. + * + * Generated from protobuf field string subject = 2; + */ + protected $subject = ''; + /** + * A description of how the precondition failed. Developers can use this + * description to understand how to fix the failure. + * For example: "Terms of service not accepted". + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $type + * The type of PreconditionFailure. We recommend using a service-specific + * enum type to define the supported precondition violation subjects. For + * example, "TOS" for "Terms of Service violation". + * @type string $subject + * The subject, relative to the type, that failed. + * For example, "google.com/cloud" relative to the "TOS" type would indicate + * which terms of service is being referenced. + * @type string $description + * A description of how the precondition failed. Developers can use this + * description to understand how to fix the failure. + * For example: "Terms of service not accepted". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * The type of PreconditionFailure. We recommend using a service-specific + * enum type to define the supported precondition violation subjects. For + * example, "TOS" for "Terms of Service violation". + * + * Generated from protobuf field string type = 1; + * @return string + */ + public function getType() + { + return $this->type; + } + /** + * The type of PreconditionFailure. We recommend using a service-specific + * enum type to define the supported precondition violation subjects. For + * example, "TOS" for "Terms of Service violation". + * + * Generated from protobuf field string type = 1; + * @param string $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkString($var, True); + $this->type = $var; + return $this; + } + /** + * The subject, relative to the type, that failed. + * For example, "google.com/cloud" relative to the "TOS" type would indicate + * which terms of service is being referenced. + * + * Generated from protobuf field string subject = 2; + * @return string + */ + public function getSubject() + { + return $this->subject; + } + /** + * The subject, relative to the type, that failed. + * For example, "google.com/cloud" relative to the "TOS" type would indicate + * which terms of service is being referenced. + * + * Generated from protobuf field string subject = 2; + * @param string $var + * @return $this + */ + public function setSubject($var) + { + GPBUtil::checkString($var, True); + $this->subject = $var; + return $this; + } + /** + * A description of how the precondition failed. Developers can use this + * description to understand how to fix the failure. + * For example: "Terms of service not accepted". + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A description of how the precondition failed. Developers can use this + * description to understand how to fix the failure. + * For example: "Terms of service not accepted". + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure.php b/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure.php new file mode 100644 index 00000000..e5eb0475 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure.php @@ -0,0 +1,69 @@ +google.rpc.QuotaFailure + */ +class QuotaFailure extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Describes all quota violations. + * + * Generated from protobuf field repeated .google.rpc.QuotaFailure.Violation violations = 1; + */ + private $violations; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type array<\Google\Rpc\QuotaFailure\Violation>|\Google\Protobuf\Internal\RepeatedField $violations + * Describes all quota violations. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * Describes all quota violations. + * + * Generated from protobuf field repeated .google.rpc.QuotaFailure.Violation violations = 1; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getViolations() + { + return $this->violations; + } + /** + * Describes all quota violations. + * + * Generated from protobuf field repeated .google.rpc.QuotaFailure.Violation violations = 1; + * @param array<\Google\Rpc\QuotaFailure\Violation>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setViolations($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\QuotaFailure\Violation::class); + $this->violations = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure/Violation.php b/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure/Violation.php new file mode 100644 index 00000000..3a2dc855 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/QuotaFailure/Violation.php @@ -0,0 +1,121 @@ +google.rpc.QuotaFailure.Violation + */ +class Violation extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The subject on which the quota check failed. + * For example, "clientip:" or "project:". + * + * Generated from protobuf field string subject = 1; + */ + protected $subject = ''; + /** + * A description of how the quota check failed. Clients can use this + * description to find more about the quota configuration in the service's + * public documentation, or find the relevant quota limit to adjust through + * developer console. + * For example: "Service disabled" or "Daily Limit for read operations + * exceeded". + * + * Generated from protobuf field string description = 2; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $subject + * The subject on which the quota check failed. + * For example, "clientip:" or "project:". + * @type string $description + * A description of how the quota check failed. Clients can use this + * description to find more about the quota configuration in the service's + * public documentation, or find the relevant quota limit to adjust through + * developer console. + * For example: "Service disabled" or "Daily Limit for read operations + * exceeded". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * The subject on which the quota check failed. + * For example, "clientip:" or "project:". + * + * Generated from protobuf field string subject = 1; + * @return string + */ + public function getSubject() + { + return $this->subject; + } + /** + * The subject on which the quota check failed. + * For example, "clientip:" or "project:". + * + * Generated from protobuf field string subject = 1; + * @param string $var + * @return $this + */ + public function setSubject($var) + { + GPBUtil::checkString($var, True); + $this->subject = $var; + return $this; + } + /** + * A description of how the quota check failed. Clients can use this + * description to find more about the quota configuration in the service's + * public documentation, or find the relevant quota limit to adjust through + * developer console. + * For example: "Service disabled" or "Daily Limit for read operations + * exceeded". + * + * Generated from protobuf field string description = 2; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * A description of how the quota check failed. Clients can use this + * description to find more about the quota configuration in the service's + * public documentation, or find the relevant quota limit to adjust through + * developer console. + * For example: "Service disabled" or "Daily Limit for read operations + * exceeded". + * + * Generated from protobuf field string description = 2; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/RequestInfo.php b/vendor/Gcp/google/common-protos/src/Rpc/RequestInfo.php new file mode 100644 index 00000000..964d3892 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/RequestInfo.php @@ -0,0 +1,101 @@ +google.rpc.RequestInfo + */ +class RequestInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * An opaque string that should only be interpreted by the service generating + * it. For example, it can be used to identify requests in the service's logs. + * + * Generated from protobuf field string request_id = 1; + */ + protected $request_id = ''; + /** + * Any data that was used to serve this request. For example, an encrypted + * stack trace that can be sent back to the service provider for debugging. + * + * Generated from protobuf field string serving_data = 2; + */ + protected $serving_data = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $request_id + * An opaque string that should only be interpreted by the service generating + * it. For example, it can be used to identify requests in the service's logs. + * @type string $serving_data + * Any data that was used to serve this request. For example, an encrypted + * stack trace that can be sent back to the service provider for debugging. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * An opaque string that should only be interpreted by the service generating + * it. For example, it can be used to identify requests in the service's logs. + * + * Generated from protobuf field string request_id = 1; + * @return string + */ + public function getRequestId() + { + return $this->request_id; + } + /** + * An opaque string that should only be interpreted by the service generating + * it. For example, it can be used to identify requests in the service's logs. + * + * Generated from protobuf field string request_id = 1; + * @param string $var + * @return $this + */ + public function setRequestId($var) + { + GPBUtil::checkString($var, True); + $this->request_id = $var; + return $this; + } + /** + * Any data that was used to serve this request. For example, an encrypted + * stack trace that can be sent back to the service provider for debugging. + * + * Generated from protobuf field string serving_data = 2; + * @return string + */ + public function getServingData() + { + return $this->serving_data; + } + /** + * Any data that was used to serve this request. For example, an encrypted + * stack trace that can be sent back to the service provider for debugging. + * + * Generated from protobuf field string serving_data = 2; + * @param string $var + * @return $this + */ + public function setServingData($var) + { + GPBUtil::checkString($var, True); + $this->serving_data = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/ResourceInfo.php b/vendor/Gcp/google/common-protos/src/Rpc/ResourceInfo.php new file mode 100644 index 00000000..29f09d2c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/ResourceInfo.php @@ -0,0 +1,190 @@ +google.rpc.ResourceInfo + */ +class ResourceInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * A name for the type of resource being accessed, e.g. "sql table", + * "cloud storage bucket", "file", "Google calendar"; or the type URL + * of the resource: e.g. "type.googleapis.com/google.pubsub.v1.Topic". + * + * Generated from protobuf field string resource_type = 1; + */ + protected $resource_type = ''; + /** + * The name of the resource being accessed. For example, a shared calendar + * name: "example.com_4fghdhgsrgh@group.calendar.google.com", if the current + * error is + * [google.rpc.Code.PERMISSION_DENIED][google.rpc.Code.PERMISSION_DENIED]. + * + * Generated from protobuf field string resource_name = 2; + */ + protected $resource_name = ''; + /** + * The owner of the resource (optional). + * For example, "user:" or "project:". + * + * Generated from protobuf field string owner = 3; + */ + protected $owner = ''; + /** + * Describes what error is encountered when accessing this resource. + * For example, updating a cloud project may require the `writer` permission + * on the developer console project. + * + * Generated from protobuf field string description = 4; + */ + protected $description = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $resource_type + * A name for the type of resource being accessed, e.g. "sql table", + * "cloud storage bucket", "file", "Google calendar"; or the type URL + * of the resource: e.g. "type.googleapis.com/google.pubsub.v1.Topic". + * @type string $resource_name + * The name of the resource being accessed. For example, a shared calendar + * name: "example.com_4fghdhgsrgh@group.calendar.google.com", if the current + * error is + * [google.rpc.Code.PERMISSION_DENIED][google.rpc.Code.PERMISSION_DENIED]. + * @type string $owner + * The owner of the resource (optional). + * For example, "user:" or "project:". + * @type string $description + * Describes what error is encountered when accessing this resource. + * For example, updating a cloud project may require the `writer` permission + * on the developer console project. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * A name for the type of resource being accessed, e.g. "sql table", + * "cloud storage bucket", "file", "Google calendar"; or the type URL + * of the resource: e.g. "type.googleapis.com/google.pubsub.v1.Topic". + * + * Generated from protobuf field string resource_type = 1; + * @return string + */ + public function getResourceType() + { + return $this->resource_type; + } + /** + * A name for the type of resource being accessed, e.g. "sql table", + * "cloud storage bucket", "file", "Google calendar"; or the type URL + * of the resource: e.g. "type.googleapis.com/google.pubsub.v1.Topic". + * + * Generated from protobuf field string resource_type = 1; + * @param string $var + * @return $this + */ + public function setResourceType($var) + { + GPBUtil::checkString($var, True); + $this->resource_type = $var; + return $this; + } + /** + * The name of the resource being accessed. For example, a shared calendar + * name: "example.com_4fghdhgsrgh@group.calendar.google.com", if the current + * error is + * [google.rpc.Code.PERMISSION_DENIED][google.rpc.Code.PERMISSION_DENIED]. + * + * Generated from protobuf field string resource_name = 2; + * @return string + */ + public function getResourceName() + { + return $this->resource_name; + } + /** + * The name of the resource being accessed. For example, a shared calendar + * name: "example.com_4fghdhgsrgh@group.calendar.google.com", if the current + * error is + * [google.rpc.Code.PERMISSION_DENIED][google.rpc.Code.PERMISSION_DENIED]. + * + * Generated from protobuf field string resource_name = 2; + * @param string $var + * @return $this + */ + public function setResourceName($var) + { + GPBUtil::checkString($var, True); + $this->resource_name = $var; + return $this; + } + /** + * The owner of the resource (optional). + * For example, "user:" or "project:". + * + * Generated from protobuf field string owner = 3; + * @return string + */ + public function getOwner() + { + return $this->owner; + } + /** + * The owner of the resource (optional). + * For example, "user:" or "project:". + * + * Generated from protobuf field string owner = 3; + * @param string $var + * @return $this + */ + public function setOwner($var) + { + GPBUtil::checkString($var, True); + $this->owner = $var; + return $this; + } + /** + * Describes what error is encountered when accessing this resource. + * For example, updating a cloud project may require the `writer` permission + * on the developer console project. + * + * Generated from protobuf field string description = 4; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Describes what error is encountered when accessing this resource. + * For example, updating a cloud project may require the `writer` permission + * on the developer console project. + * + * Generated from protobuf field string description = 4; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/RetryInfo.php b/vendor/Gcp/google/common-protos/src/Rpc/RetryInfo.php new file mode 100644 index 00000000..749c0f7f --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/RetryInfo.php @@ -0,0 +1,79 @@ +google.rpc.RetryInfo + */ +class RetryInfo extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Clients should wait at least this long between retrying the same request. + * + * Generated from protobuf field .google.protobuf.Duration retry_delay = 1; + */ + protected $retry_delay = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Protobuf\Duration $retry_delay + * Clients should wait at least this long between retrying the same request. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\ErrorDetails::initOnce(); + parent::__construct($data); + } + /** + * Clients should wait at least this long between retrying the same request. + * + * Generated from protobuf field .google.protobuf.Duration retry_delay = 1; + * @return \Google\Protobuf\Duration|null + */ + public function getRetryDelay() + { + return $this->retry_delay; + } + public function hasRetryDelay() + { + return isset($this->retry_delay); + } + public function clearRetryDelay() + { + unset($this->retry_delay); + } + /** + * Clients should wait at least this long between retrying the same request. + * + * Generated from protobuf field .google.protobuf.Duration retry_delay = 1; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setRetryDelay($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->retry_delay = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Rpc/Status.php b/vendor/Gcp/google/common-protos/src/Rpc/Status.php new file mode 100644 index 00000000..cc942f20 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Rpc/Status.php @@ -0,0 +1,148 @@ +google.rpc.Status + */ +class Status extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The status code, which should be an enum value of + * [google.rpc.Code][google.rpc.Code]. + * + * Generated from protobuf field int32 code = 1; + */ + protected $code = 0; + /** + * A developer-facing error message, which should be in English. Any + * user-facing error message should be localized and sent in the + * [google.rpc.Status.details][google.rpc.Status.details] field, or localized + * by the client. + * + * Generated from protobuf field string message = 2; + */ + protected $message = ''; + /** + * A list of messages that carry the error details. There is a common set of + * message types for APIs to use. + * + * Generated from protobuf field repeated .google.protobuf.Any details = 3; + */ + private $details; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $code + * The status code, which should be an enum value of + * [google.rpc.Code][google.rpc.Code]. + * @type string $message + * A developer-facing error message, which should be in English. Any + * user-facing error message should be localized and sent in the + * [google.rpc.Status.details][google.rpc.Status.details] field, or localized + * by the client. + * @type array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $details + * A list of messages that carry the error details. There is a common set of + * message types for APIs to use. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Rpc\Status::initOnce(); + parent::__construct($data); + } + /** + * The status code, which should be an enum value of + * [google.rpc.Code][google.rpc.Code]. + * + * Generated from protobuf field int32 code = 1; + * @return int + */ + public function getCode() + { + return $this->code; + } + /** + * The status code, which should be an enum value of + * [google.rpc.Code][google.rpc.Code]. + * + * Generated from protobuf field int32 code = 1; + * @param int $var + * @return $this + */ + public function setCode($var) + { + GPBUtil::checkInt32($var); + $this->code = $var; + return $this; + } + /** + * A developer-facing error message, which should be in English. Any + * user-facing error message should be localized and sent in the + * [google.rpc.Status.details][google.rpc.Status.details] field, or localized + * by the client. + * + * Generated from protobuf field string message = 2; + * @return string + */ + public function getMessage() + { + return $this->message; + } + /** + * A developer-facing error message, which should be in English. Any + * user-facing error message should be localized and sent in the + * [google.rpc.Status.details][google.rpc.Status.details] field, or localized + * by the client. + * + * Generated from protobuf field string message = 2; + * @param string $var + * @return $this + */ + public function setMessage($var) + { + GPBUtil::checkString($var, True); + $this->message = $var; + return $this; + } + /** + * A list of messages that carry the error details. There is a common set of + * message types for APIs to use. + * + * Generated from protobuf field repeated .google.protobuf.Any details = 3; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getDetails() + { + return $this->details; + } + /** + * A list of messages that carry the error details. There is a common set of + * message types for APIs to use. + * + * Generated from protobuf field repeated .google.protobuf.Any details = 3; + * @param array<\Google\Protobuf\Any>|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setDetails($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::MESSAGE, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Any::class); + $this->details = $arr; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/CalendarPeriod.php b/vendor/Gcp/google/common-protos/src/Type/CalendarPeriod.php new file mode 100644 index 00000000..9be58237 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/CalendarPeriod.php @@ -0,0 +1,85 @@ +google.type.CalendarPeriod + */ +class CalendarPeriod +{ + /** + * Undefined period, raises an error. + * + * Generated from protobuf enum CALENDAR_PERIOD_UNSPECIFIED = 0; + */ + const CALENDAR_PERIOD_UNSPECIFIED = 0; + /** + * A day. + * + * Generated from protobuf enum DAY = 1; + */ + const DAY = 1; + /** + * A week. Weeks begin on Monday, following + * [ISO 8601](https://en.wikipedia.org/wiki/ISO_week_date). + * + * Generated from protobuf enum WEEK = 2; + */ + const WEEK = 2; + /** + * A fortnight. The first calendar fortnight of the year begins at the start + * of week 1 according to + * [ISO 8601](https://en.wikipedia.org/wiki/ISO_week_date). + * + * Generated from protobuf enum FORTNIGHT = 3; + */ + const FORTNIGHT = 3; + /** + * A month. + * + * Generated from protobuf enum MONTH = 4; + */ + const MONTH = 4; + /** + * A quarter. Quarters start on dates 1-Jan, 1-Apr, 1-Jul, and 1-Oct of each + * year. + * + * Generated from protobuf enum QUARTER = 5; + */ + const QUARTER = 5; + /** + * A half-year. Half-years start on dates 1-Jan and 1-Jul. + * + * Generated from protobuf enum HALF = 6; + */ + const HALF = 6; + /** + * A year. + * + * Generated from protobuf enum YEAR = 7; + */ + const YEAR = 7; + private static $valueToName = [self::CALENDAR_PERIOD_UNSPECIFIED => 'CALENDAR_PERIOD_UNSPECIFIED', self::DAY => 'DAY', self::WEEK => 'WEEK', self::FORTNIGHT => 'FORTNIGHT', self::MONTH => 'MONTH', self::QUARTER => 'QUARTER', self::HALF => 'HALF', self::YEAR => 'YEAR']; + 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/vendor/Gcp/google/common-protos/src/Type/Color.php b/vendor/Gcp/google/common-protos/src/Type/Color.php new file mode 100644 index 00000000..4119a810 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Color.php @@ -0,0 +1,340 @@ +google.type.Color + */ +class Color extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The amount of red in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float red = 1; + */ + protected $red = 0.0; + /** + * The amount of green in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float green = 2; + */ + protected $green = 0.0; + /** + * The amount of blue in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float blue = 3; + */ + protected $blue = 0.0; + /** + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * + * Generated from protobuf field .google.protobuf.FloatValue alpha = 4; + */ + protected $alpha = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $red + * The amount of red in the color as a value in the interval [0, 1]. + * @type float $green + * The amount of green in the color as a value in the interval [0, 1]. + * @type float $blue + * The amount of blue in the color as a value in the interval [0, 1]. + * @type \Google\Protobuf\FloatValue $alpha + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Color::initOnce(); + parent::__construct($data); + } + /** + * The amount of red in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float red = 1; + * @return float + */ + public function getRed() + { + return $this->red; + } + /** + * The amount of red in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float red = 1; + * @param float $var + * @return $this + */ + public function setRed($var) + { + GPBUtil::checkFloat($var); + $this->red = $var; + return $this; + } + /** + * The amount of green in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float green = 2; + * @return float + */ + public function getGreen() + { + return $this->green; + } + /** + * The amount of green in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float green = 2; + * @param float $var + * @return $this + */ + public function setGreen($var) + { + GPBUtil::checkFloat($var); + $this->green = $var; + return $this; + } + /** + * The amount of blue in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float blue = 3; + * @return float + */ + public function getBlue() + { + return $this->blue; + } + /** + * The amount of blue in the color as a value in the interval [0, 1]. + * + * Generated from protobuf field float blue = 3; + * @param float $var + * @return $this + */ + public function setBlue($var) + { + GPBUtil::checkFloat($var); + $this->blue = $var; + return $this; + } + /** + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * + * Generated from protobuf field .google.protobuf.FloatValue alpha = 4; + * @return \Google\Protobuf\FloatValue|null + */ + public function getAlpha() + { + return $this->alpha; + } + public function hasAlpha() + { + return isset($this->alpha); + } + public function clearAlpha() + { + unset($this->alpha); + } + /** + * Returns the unboxed value from getAlpha() + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * + * Generated from protobuf field .google.protobuf.FloatValue alpha = 4; + * @return float|null + */ + public function getAlphaUnwrapped() + { + return $this->readWrapperValue("alpha"); + } + /** + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * + * Generated from protobuf field .google.protobuf.FloatValue alpha = 4; + * @param \Google\Protobuf\FloatValue $var + * @return $this + */ + public function setAlpha($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\FloatValue::class); + $this->alpha = $var; + return $this; + } + /** + * Sets the field by wrapping a primitive type in a Google\Protobuf\FloatValue object. + * The fraction of this color that should be applied to the pixel. That is, + * the final pixel color is defined by the equation: + * `pixel color = alpha * (this color) + (1.0 - alpha) * (background color)` + * This means that a value of 1.0 corresponds to a solid color, whereas + * a value of 0.0 corresponds to a completely transparent color. This + * uses a wrapper message rather than a simple float scalar so that it is + * possible to distinguish between a default value and the value being unset. + * If omitted, this color object is rendered as a solid color + * (as if the alpha value had been explicitly given a value of 1.0). + * + * Generated from protobuf field .google.protobuf.FloatValue alpha = 4; + * @param float|null $var + * @return $this + */ + public function setAlphaUnwrapped($var) + { + $this->writeWrapperValue("alpha", $var); + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Date.php b/vendor/Gcp/google/common-protos/src/Type/Date.php new file mode 100644 index 00000000..48f3ffa8 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Date.php @@ -0,0 +1,149 @@ +google.type.Date + */ +class Date extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without + * a year. + * + * Generated from protobuf field int32 year = 1; + */ + protected $year = 0; + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a + * month and day. + * + * Generated from protobuf field int32 month = 2; + */ + protected $month = 0; + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 + * to specify a year by itself or a year and month where the day isn't + * significant. + * + * Generated from protobuf field int32 day = 3; + */ + protected $day = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $year + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without + * a year. + * @type int $month + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a + * month and day. + * @type int $day + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 + * to specify a year by itself or a year and month where the day isn't + * significant. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Date::initOnce(); + parent::__construct($data); + } + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without + * a year. + * + * Generated from protobuf field int32 year = 1; + * @return int + */ + public function getYear() + { + return $this->year; + } + /** + * Year of the date. Must be from 1 to 9999, or 0 to specify a date without + * a year. + * + * Generated from protobuf field int32 year = 1; + * @param int $var + * @return $this + */ + public function setYear($var) + { + GPBUtil::checkInt32($var); + $this->year = $var; + return $this; + } + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a + * month and day. + * + * Generated from protobuf field int32 month = 2; + * @return int + */ + public function getMonth() + { + return $this->month; + } + /** + * Month of a year. Must be from 1 to 12, or 0 to specify a year without a + * month and day. + * + * Generated from protobuf field int32 month = 2; + * @param int $var + * @return $this + */ + public function setMonth($var) + { + GPBUtil::checkInt32($var); + $this->month = $var; + return $this; + } + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 + * to specify a year by itself or a year and month where the day isn't + * significant. + * + * Generated from protobuf field int32 day = 3; + * @return int + */ + public function getDay() + { + return $this->day; + } + /** + * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 + * to specify a year by itself or a year and month where the day isn't + * significant. + * + * Generated from protobuf field int32 day = 3; + * @param int $var + * @return $this + */ + public function setDay($var) + { + GPBUtil::checkInt32($var); + $this->day = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/DateTime.php b/vendor/Gcp/google/common-protos/src/Type/DateTime.php new file mode 100644 index 00000000..79eda8f1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/DateTime.php @@ -0,0 +1,360 @@ +google.type.DateTime + */ +class DateTime extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a + * datetime without a year. + * + * Generated from protobuf field int32 year = 1; + */ + protected $year = 0; + /** + * Required. Month of year. Must be from 1 to 12. + * + * Generated from protobuf field int32 month = 2; + */ + protected $month = 0; + /** + * Required. Day of month. Must be from 1 to 31 and valid for the year and + * month. + * + * Generated from protobuf field int32 day = 3; + */ + protected $day = 0; + /** + * Required. Hours of day in 24 hour format. Should be from 0 to 23. An API + * may choose to allow the value "24:00:00" for scenarios like business + * closing time. + * + * Generated from protobuf field int32 hours = 4; + */ + protected $hours = 0; + /** + * Required. Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 5; + */ + protected $minutes = 0; + /** + * Required. Seconds of minutes of the time. Must normally be from 0 to 59. An + * API may allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 6; + */ + protected $seconds = 0; + /** + * Required. Fractions of seconds in nanoseconds. Must be from 0 to + * 999,999,999. + * + * Generated from protobuf field int32 nanos = 7; + */ + protected $nanos = 0; + protected $time_offset; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $year + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a + * datetime without a year. + * @type int $month + * Required. Month of year. Must be from 1 to 12. + * @type int $day + * Required. Day of month. Must be from 1 to 31 and valid for the year and + * month. + * @type int $hours + * Required. Hours of day in 24 hour format. Should be from 0 to 23. An API + * may choose to allow the value "24:00:00" for scenarios like business + * closing time. + * @type int $minutes + * Required. Minutes of hour of day. Must be from 0 to 59. + * @type int $seconds + * Required. Seconds of minutes of the time. Must normally be from 0 to 59. An + * API may allow the value 60 if it allows leap-seconds. + * @type int $nanos + * Required. Fractions of seconds in nanoseconds. Must be from 0 to + * 999,999,999. + * @type \Google\Protobuf\Duration $utc_offset + * UTC offset. Must be whole seconds, between -18 hours and +18 hours. + * For example, a UTC offset of -4:00 would be represented as + * { seconds: -14400 }. + * @type \Google\Type\TimeZone $time_zone + * Time zone. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Datetime::initOnce(); + parent::__construct($data); + } + /** + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a + * datetime without a year. + * + * Generated from protobuf field int32 year = 1; + * @return int + */ + public function getYear() + { + return $this->year; + } + /** + * Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a + * datetime without a year. + * + * Generated from protobuf field int32 year = 1; + * @param int $var + * @return $this + */ + public function setYear($var) + { + GPBUtil::checkInt32($var); + $this->year = $var; + return $this; + } + /** + * Required. Month of year. Must be from 1 to 12. + * + * Generated from protobuf field int32 month = 2; + * @return int + */ + public function getMonth() + { + return $this->month; + } + /** + * Required. Month of year. Must be from 1 to 12. + * + * Generated from protobuf field int32 month = 2; + * @param int $var + * @return $this + */ + public function setMonth($var) + { + GPBUtil::checkInt32($var); + $this->month = $var; + return $this; + } + /** + * Required. Day of month. Must be from 1 to 31 and valid for the year and + * month. + * + * Generated from protobuf field int32 day = 3; + * @return int + */ + public function getDay() + { + return $this->day; + } + /** + * Required. Day of month. Must be from 1 to 31 and valid for the year and + * month. + * + * Generated from protobuf field int32 day = 3; + * @param int $var + * @return $this + */ + public function setDay($var) + { + GPBUtil::checkInt32($var); + $this->day = $var; + return $this; + } + /** + * Required. Hours of day in 24 hour format. Should be from 0 to 23. An API + * may choose to allow the value "24:00:00" for scenarios like business + * closing time. + * + * Generated from protobuf field int32 hours = 4; + * @return int + */ + public function getHours() + { + return $this->hours; + } + /** + * Required. Hours of day in 24 hour format. Should be from 0 to 23. An API + * may choose to allow the value "24:00:00" for scenarios like business + * closing time. + * + * Generated from protobuf field int32 hours = 4; + * @param int $var + * @return $this + */ + public function setHours($var) + { + GPBUtil::checkInt32($var); + $this->hours = $var; + return $this; + } + /** + * Required. Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 5; + * @return int + */ + public function getMinutes() + { + return $this->minutes; + } + /** + * Required. Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 5; + * @param int $var + * @return $this + */ + public function setMinutes($var) + { + GPBUtil::checkInt32($var); + $this->minutes = $var; + return $this; + } + /** + * Required. Seconds of minutes of the time. Must normally be from 0 to 59. An + * API may allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 6; + * @return int + */ + public function getSeconds() + { + return $this->seconds; + } + /** + * Required. Seconds of minutes of the time. Must normally be from 0 to 59. An + * API may allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 6; + * @param int $var + * @return $this + */ + public function setSeconds($var) + { + GPBUtil::checkInt32($var); + $this->seconds = $var; + return $this; + } + /** + * Required. Fractions of seconds in nanoseconds. Must be from 0 to + * 999,999,999. + * + * Generated from protobuf field int32 nanos = 7; + * @return int + */ + public function getNanos() + { + return $this->nanos; + } + /** + * Required. Fractions of seconds in nanoseconds. Must be from 0 to + * 999,999,999. + * + * Generated from protobuf field int32 nanos = 7; + * @param int $var + * @return $this + */ + public function setNanos($var) + { + GPBUtil::checkInt32($var); + $this->nanos = $var; + return $this; + } + /** + * UTC offset. Must be whole seconds, between -18 hours and +18 hours. + * For example, a UTC offset of -4:00 would be represented as + * { seconds: -14400 }. + * + * Generated from protobuf field .google.protobuf.Duration utc_offset = 8; + * @return \Google\Protobuf\Duration|null + */ + public function getUtcOffset() + { + return $this->readOneof(8); + } + public function hasUtcOffset() + { + return $this->hasOneof(8); + } + /** + * UTC offset. Must be whole seconds, between -18 hours and +18 hours. + * For example, a UTC offset of -4:00 would be represented as + * { seconds: -14400 }. + * + * Generated from protobuf field .google.protobuf.Duration utc_offset = 8; + * @param \Google\Protobuf\Duration $var + * @return $this + */ + public function setUtcOffset($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Duration::class); + $this->writeOneof(8, $var); + return $this; + } + /** + * Time zone. + * + * Generated from protobuf field .google.type.TimeZone time_zone = 9; + * @return \Google\Type\TimeZone|null + */ + public function getTimeZone() + { + return $this->readOneof(9); + } + public function hasTimeZone() + { + return $this->hasOneof(9); + } + /** + * Time zone. + * + * Generated from protobuf field .google.type.TimeZone time_zone = 9; + * @param \Google\Type\TimeZone $var + * @return $this + */ + public function setTimeZone($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Type\TimeZone::class); + $this->writeOneof(9, $var); + return $this; + } + /** + * @return string + */ + public function getTimeOffset() + { + return $this->whichOneof("time_offset"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/DayOfWeek.php b/vendor/Gcp/google/common-protos/src/Type/DayOfWeek.php new file mode 100644 index 00000000..6c39e16c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/DayOfWeek.php @@ -0,0 +1,79 @@ +google.type.DayOfWeek + */ +class DayOfWeek +{ + /** + * The day of the week is unspecified. + * + * Generated from protobuf enum DAY_OF_WEEK_UNSPECIFIED = 0; + */ + const DAY_OF_WEEK_UNSPECIFIED = 0; + /** + * Monday + * + * Generated from protobuf enum MONDAY = 1; + */ + const MONDAY = 1; + /** + * Tuesday + * + * Generated from protobuf enum TUESDAY = 2; + */ + const TUESDAY = 2; + /** + * Wednesday + * + * Generated from protobuf enum WEDNESDAY = 3; + */ + const WEDNESDAY = 3; + /** + * Thursday + * + * Generated from protobuf enum THURSDAY = 4; + */ + const THURSDAY = 4; + /** + * Friday + * + * Generated from protobuf enum FRIDAY = 5; + */ + const FRIDAY = 5; + /** + * Saturday + * + * Generated from protobuf enum SATURDAY = 6; + */ + const SATURDAY = 6; + /** + * Sunday + * + * Generated from protobuf enum SUNDAY = 7; + */ + const SUNDAY = 7; + private static $valueToName = [self::DAY_OF_WEEK_UNSPECIFIED => 'DAY_OF_WEEK_UNSPECIFIED', self::MONDAY => 'MONDAY', self::TUESDAY => 'TUESDAY', self::WEDNESDAY => 'WEDNESDAY', self::THURSDAY => 'THURSDAY', self::FRIDAY => 'FRIDAY', self::SATURDAY => 'SATURDAY', self::SUNDAY => 'SUNDAY']; + 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/vendor/Gcp/google/common-protos/src/Type/Decimal.php b/vendor/Gcp/google/common-protos/src/Type/Decimal.php new file mode 100644 index 00000000..9096a5be --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Decimal.php @@ -0,0 +1,238 @@ +google.type.Decimal + */ +class Decimal extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The decimal value, as a string. + * The string representation consists of an optional sign, `+` (`U+002B`) + * or `-` (`U+002D`), followed by a sequence of zero or more decimal digits + * ("the integer"), optionally followed by a fraction, optionally followed + * by an exponent. + * The fraction consists of a decimal point followed by zero or more decimal + * digits. The string must contain at least one digit in either the integer + * or the fraction. The number formed by the sign, the integer and the + * fraction is referred to as the significand. + * The exponent consists of the character `e` (`U+0065`) or `E` (`U+0045`) + * followed by one or more decimal digits. + * Services **should** normalize decimal values before storing them by: + * - Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). + * - Replacing a zero-length integer value with `0` (`.5` -> `0.5`). + * - Coercing the exponent character to lower-case (`2.5E8` -> `2.5e8`). + * - Removing an explicitly-provided zero exponent (`2.5e0` -> `2.5`). + * Services **may** perform additional normalization based on its own needs + * and the internal decimal implementation selected, such as shifting the + * decimal point and exponent value together (example: `2.5e-1` <-> `0.25`). + * Additionally, services **may** preserve trailing zeroes in the fraction + * to indicate increased precision, but are not required to do so. + * Note that only the `.` character is supported to divide the integer + * and the fraction; `,` **should not** be supported regardless of locale. + * Additionally, thousand separators **should not** be supported. If a + * service does support them, values **must** be normalized. + * The ENBF grammar is: + * DecimalString = + * [Sign] Significand [Exponent]; + * Sign = '+' | '-'; + * Significand = + * Digits ['.'] [Digits] | [Digits] '.' Digits; + * Exponent = ('e' | 'E') [Sign] Digits; + * Digits = { '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; + * Services **should** clearly document the range of supported values, the + * maximum supported precision (total number of digits), and, if applicable, + * the scale (number of digits after the decimal point), as well as how it + * behaves when receiving out-of-bounds values. + * Services **may** choose to accept values passed as input even when the + * value has a higher precision or scale than the service supports, and + * **should** round the value to fit the supported scale. Alternatively, the + * service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) + * if precision would be lost. + * Services **should** error with `400 Bad Request` (`INVALID_ARGUMENT` in + * gRPC) if the service receives a value outside of the supported range. + * + * Generated from protobuf field string value = 1; + */ + protected $value = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $value + * The decimal value, as a string. + * The string representation consists of an optional sign, `+` (`U+002B`) + * or `-` (`U+002D`), followed by a sequence of zero or more decimal digits + * ("the integer"), optionally followed by a fraction, optionally followed + * by an exponent. + * The fraction consists of a decimal point followed by zero or more decimal + * digits. The string must contain at least one digit in either the integer + * or the fraction. The number formed by the sign, the integer and the + * fraction is referred to as the significand. + * The exponent consists of the character `e` (`U+0065`) or `E` (`U+0045`) + * followed by one or more decimal digits. + * Services **should** normalize decimal values before storing them by: + * - Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). + * - Replacing a zero-length integer value with `0` (`.5` -> `0.5`). + * - Coercing the exponent character to lower-case (`2.5E8` -> `2.5e8`). + * - Removing an explicitly-provided zero exponent (`2.5e0` -> `2.5`). + * Services **may** perform additional normalization based on its own needs + * and the internal decimal implementation selected, such as shifting the + * decimal point and exponent value together (example: `2.5e-1` <-> `0.25`). + * Additionally, services **may** preserve trailing zeroes in the fraction + * to indicate increased precision, but are not required to do so. + * Note that only the `.` character is supported to divide the integer + * and the fraction; `,` **should not** be supported regardless of locale. + * Additionally, thousand separators **should not** be supported. If a + * service does support them, values **must** be normalized. + * The ENBF grammar is: + * DecimalString = + * [Sign] Significand [Exponent]; + * Sign = '+' | '-'; + * Significand = + * Digits ['.'] [Digits] | [Digits] '.' Digits; + * Exponent = ('e' | 'E') [Sign] Digits; + * Digits = { '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; + * Services **should** clearly document the range of supported values, the + * maximum supported precision (total number of digits), and, if applicable, + * the scale (number of digits after the decimal point), as well as how it + * behaves when receiving out-of-bounds values. + * Services **may** choose to accept values passed as input even when the + * value has a higher precision or scale than the service supports, and + * **should** round the value to fit the supported scale. Alternatively, the + * service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) + * if precision would be lost. + * Services **should** error with `400 Bad Request` (`INVALID_ARGUMENT` in + * gRPC) if the service receives a value outside of the supported range. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Decimal::initOnce(); + parent::__construct($data); + } + /** + * The decimal value, as a string. + * The string representation consists of an optional sign, `+` (`U+002B`) + * or `-` (`U+002D`), followed by a sequence of zero or more decimal digits + * ("the integer"), optionally followed by a fraction, optionally followed + * by an exponent. + * The fraction consists of a decimal point followed by zero or more decimal + * digits. The string must contain at least one digit in either the integer + * or the fraction. The number formed by the sign, the integer and the + * fraction is referred to as the significand. + * The exponent consists of the character `e` (`U+0065`) or `E` (`U+0045`) + * followed by one or more decimal digits. + * Services **should** normalize decimal values before storing them by: + * - Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). + * - Replacing a zero-length integer value with `0` (`.5` -> `0.5`). + * - Coercing the exponent character to lower-case (`2.5E8` -> `2.5e8`). + * - Removing an explicitly-provided zero exponent (`2.5e0` -> `2.5`). + * Services **may** perform additional normalization based on its own needs + * and the internal decimal implementation selected, such as shifting the + * decimal point and exponent value together (example: `2.5e-1` <-> `0.25`). + * Additionally, services **may** preserve trailing zeroes in the fraction + * to indicate increased precision, but are not required to do so. + * Note that only the `.` character is supported to divide the integer + * and the fraction; `,` **should not** be supported regardless of locale. + * Additionally, thousand separators **should not** be supported. If a + * service does support them, values **must** be normalized. + * The ENBF grammar is: + * DecimalString = + * [Sign] Significand [Exponent]; + * Sign = '+' | '-'; + * Significand = + * Digits ['.'] [Digits] | [Digits] '.' Digits; + * Exponent = ('e' | 'E') [Sign] Digits; + * Digits = { '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; + * Services **should** clearly document the range of supported values, the + * maximum supported precision (total number of digits), and, if applicable, + * the scale (number of digits after the decimal point), as well as how it + * behaves when receiving out-of-bounds values. + * Services **may** choose to accept values passed as input even when the + * value has a higher precision or scale than the service supports, and + * **should** round the value to fit the supported scale. Alternatively, the + * service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) + * if precision would be lost. + * Services **should** error with `400 Bad Request` (`INVALID_ARGUMENT` in + * gRPC) if the service receives a value outside of the supported range. + * + * Generated from protobuf field string value = 1; + * @return string + */ + public function getValue() + { + return $this->value; + } + /** + * The decimal value, as a string. + * The string representation consists of an optional sign, `+` (`U+002B`) + * or `-` (`U+002D`), followed by a sequence of zero or more decimal digits + * ("the integer"), optionally followed by a fraction, optionally followed + * by an exponent. + * The fraction consists of a decimal point followed by zero or more decimal + * digits. The string must contain at least one digit in either the integer + * or the fraction. The number formed by the sign, the integer and the + * fraction is referred to as the significand. + * The exponent consists of the character `e` (`U+0065`) or `E` (`U+0045`) + * followed by one or more decimal digits. + * Services **should** normalize decimal values before storing them by: + * - Removing an explicitly-provided `+` sign (`+2.5` -> `2.5`). + * - Replacing a zero-length integer value with `0` (`.5` -> `0.5`). + * - Coercing the exponent character to lower-case (`2.5E8` -> `2.5e8`). + * - Removing an explicitly-provided zero exponent (`2.5e0` -> `2.5`). + * Services **may** perform additional normalization based on its own needs + * and the internal decimal implementation selected, such as shifting the + * decimal point and exponent value together (example: `2.5e-1` <-> `0.25`). + * Additionally, services **may** preserve trailing zeroes in the fraction + * to indicate increased precision, but are not required to do so. + * Note that only the `.` character is supported to divide the integer + * and the fraction; `,` **should not** be supported regardless of locale. + * Additionally, thousand separators **should not** be supported. If a + * service does support them, values **must** be normalized. + * The ENBF grammar is: + * DecimalString = + * [Sign] Significand [Exponent]; + * Sign = '+' | '-'; + * Significand = + * Digits ['.'] [Digits] | [Digits] '.' Digits; + * Exponent = ('e' | 'E') [Sign] Digits; + * Digits = { '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' }; + * Services **should** clearly document the range of supported values, the + * maximum supported precision (total number of digits), and, if applicable, + * the scale (number of digits after the decimal point), as well as how it + * behaves when receiving out-of-bounds values. + * Services **may** choose to accept values passed as input even when the + * value has a higher precision or scale than the service supports, and + * **should** round the value to fit the supported scale. Alternatively, the + * service **may** error with `400 Bad Request` (`INVALID_ARGUMENT` in gRPC) + * if precision would be lost. + * Services **should** error with `400 Bad Request` (`INVALID_ARGUMENT` in + * gRPC) if the service receives a value outside of the supported range. + * + * Generated from protobuf field string value = 1; + * @param string $var + * @return $this + */ + public function setValue($var) + { + GPBUtil::checkString($var, True); + $this->value = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Expr.php b/vendor/Gcp/google/common-protos/src/Type/Expr.php new file mode 100644 index 00000000..90b6d302 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Expr.php @@ -0,0 +1,195 @@ +google.type.Expr + */ +class Expr extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Textual representation of an expression in Common Expression Language + * syntax. + * + * Generated from protobuf field string expression = 1; + */ + protected $expression = ''; + /** + * Optional. Title for the expression, i.e. a short string describing + * its purpose. This can be used e.g. in UIs which allow to enter the + * expression. + * + * Generated from protobuf field string title = 2; + */ + protected $title = ''; + /** + * Optional. Description of the expression. This is a longer text which + * describes the expression, e.g. when hovered over it in a UI. + * + * Generated from protobuf field string description = 3; + */ + protected $description = ''; + /** + * Optional. String indicating the location of the expression for error + * reporting, e.g. a file name and a position in the file. + * + * Generated from protobuf field string location = 4; + */ + protected $location = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $expression + * Textual representation of an expression in Common Expression Language + * syntax. + * @type string $title + * Optional. Title for the expression, i.e. a short string describing + * its purpose. This can be used e.g. in UIs which allow to enter the + * expression. + * @type string $description + * Optional. Description of the expression. This is a longer text which + * describes the expression, e.g. when hovered over it in a UI. + * @type string $location + * Optional. String indicating the location of the expression for error + * reporting, e.g. a file name and a position in the file. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Expr::initOnce(); + parent::__construct($data); + } + /** + * Textual representation of an expression in Common Expression Language + * syntax. + * + * Generated from protobuf field string expression = 1; + * @return string + */ + public function getExpression() + { + return $this->expression; + } + /** + * Textual representation of an expression in Common Expression Language + * syntax. + * + * Generated from protobuf field string expression = 1; + * @param string $var + * @return $this + */ + public function setExpression($var) + { + GPBUtil::checkString($var, True); + $this->expression = $var; + return $this; + } + /** + * Optional. Title for the expression, i.e. a short string describing + * its purpose. This can be used e.g. in UIs which allow to enter the + * expression. + * + * Generated from protobuf field string title = 2; + * @return string + */ + public function getTitle() + { + return $this->title; + } + /** + * Optional. Title for the expression, i.e. a short string describing + * its purpose. This can be used e.g. in UIs which allow to enter the + * expression. + * + * Generated from protobuf field string title = 2; + * @param string $var + * @return $this + */ + public function setTitle($var) + { + GPBUtil::checkString($var, True); + $this->title = $var; + return $this; + } + /** + * Optional. Description of the expression. This is a longer text which + * describes the expression, e.g. when hovered over it in a UI. + * + * Generated from protobuf field string description = 3; + * @return string + */ + public function getDescription() + { + return $this->description; + } + /** + * Optional. Description of the expression. This is a longer text which + * describes the expression, e.g. when hovered over it in a UI. + * + * Generated from protobuf field string description = 3; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + return $this; + } + /** + * Optional. String indicating the location of the expression for error + * reporting, e.g. a file name and a position in the file. + * + * Generated from protobuf field string location = 4; + * @return string + */ + public function getLocation() + { + return $this->location; + } + /** + * Optional. String indicating the location of the expression for error + * reporting, e.g. a file name and a position in the file. + * + * Generated from protobuf field string location = 4; + * @param string $var + * @return $this + */ + public function setLocation($var) + { + GPBUtil::checkString($var, True); + $this->location = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Fraction.php b/vendor/Gcp/google/common-protos/src/Type/Fraction.php new file mode 100644 index 00000000..92282a91 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Fraction.php @@ -0,0 +1,96 @@ +google.type.Fraction + */ +class Fraction extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The numerator in the fraction, e.g. 2 in 2/3. + * + * Generated from protobuf field int64 numerator = 1; + */ + protected $numerator = 0; + /** + * The value by which the numerator is divided, e.g. 3 in 2/3. Must be + * positive. + * + * Generated from protobuf field int64 denominator = 2; + */ + protected $denominator = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $numerator + * The numerator in the fraction, e.g. 2 in 2/3. + * @type int|string $denominator + * The value by which the numerator is divided, e.g. 3 in 2/3. Must be + * positive. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Fraction::initOnce(); + parent::__construct($data); + } + /** + * The numerator in the fraction, e.g. 2 in 2/3. + * + * Generated from protobuf field int64 numerator = 1; + * @return int|string + */ + public function getNumerator() + { + return $this->numerator; + } + /** + * The numerator in the fraction, e.g. 2 in 2/3. + * + * Generated from protobuf field int64 numerator = 1; + * @param int|string $var + * @return $this + */ + public function setNumerator($var) + { + GPBUtil::checkInt64($var); + $this->numerator = $var; + return $this; + } + /** + * The value by which the numerator is divided, e.g. 3 in 2/3. Must be + * positive. + * + * Generated from protobuf field int64 denominator = 2; + * @return int|string + */ + public function getDenominator() + { + return $this->denominator; + } + /** + * The value by which the numerator is divided, e.g. 3 in 2/3. Must be + * positive. + * + * Generated from protobuf field int64 denominator = 2; + * @param int|string $var + * @return $this + */ + public function setDenominator($var) + { + GPBUtil::checkInt64($var); + $this->denominator = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Interval.php b/vendor/Gcp/google/common-protos/src/Type/Interval.php new file mode 100644 index 00000000..d7a469e1 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Interval.php @@ -0,0 +1,128 @@ +google.type.Interval + */ +class Interval extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Optional. Inclusive start of the interval. + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 1; + */ + protected $start_time = null; + /** + * Optional. Exclusive end of the interval. + * If specified, a Timestamp matching this interval will have to be before the + * end. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 2; + */ + protected $end_time = null; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Protobuf\Timestamp $start_time + * Optional. Inclusive start of the interval. + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + * @type \Google\Protobuf\Timestamp $end_time + * Optional. Exclusive end of the interval. + * If specified, a Timestamp matching this interval will have to be before the + * end. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Interval::initOnce(); + parent::__construct($data); + } + /** + * Optional. Inclusive start of the interval. + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 1; + * @return \Google\Protobuf\Timestamp|null + */ + public function getStartTime() + { + return $this->start_time; + } + public function hasStartTime() + { + return isset($this->start_time); + } + public function clearStartTime() + { + unset($this->start_time); + } + /** + * Optional. Inclusive start of the interval. + * If specified, a Timestamp matching this interval will have to be the same + * or after the start. + * + * Generated from protobuf field .google.protobuf.Timestamp start_time = 1; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setStartTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->start_time = $var; + return $this; + } + /** + * Optional. Exclusive end of the interval. + * If specified, a Timestamp matching this interval will have to be before the + * end. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 2; + * @return \Google\Protobuf\Timestamp|null + */ + public function getEndTime() + { + return $this->end_time; + } + public function hasEndTime() + { + return isset($this->end_time); + } + public function clearEndTime() + { + unset($this->end_time); + } + /** + * Optional. Exclusive end of the interval. + * If specified, a Timestamp matching this interval will have to be before the + * end. + * + * Generated from protobuf field .google.protobuf.Timestamp end_time = 2; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setEndTime($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Timestamp::class); + $this->end_time = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/LatLng.php b/vendor/Gcp/google/common-protos/src/Type/LatLng.php new file mode 100644 index 00000000..b8366049 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/LatLng.php @@ -0,0 +1,96 @@ +WGS84 + * standard. Values must be within normalized ranges. + * + * Generated from protobuf message google.type.LatLng + */ +class LatLng extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + * + * Generated from protobuf field double latitude = 1; + */ + protected $latitude = 0.0; + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + * + * Generated from protobuf field double longitude = 2; + */ + protected $longitude = 0.0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $latitude + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + * @type float $longitude + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Latlng::initOnce(); + parent::__construct($data); + } + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + * + * Generated from protobuf field double latitude = 1; + * @return float + */ + public function getLatitude() + { + return $this->latitude; + } + /** + * The latitude in degrees. It must be in the range [-90.0, +90.0]. + * + * Generated from protobuf field double latitude = 1; + * @param float $var + * @return $this + */ + public function setLatitude($var) + { + GPBUtil::checkDouble($var); + $this->latitude = $var; + return $this; + } + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + * + * Generated from protobuf field double longitude = 2; + * @return float + */ + public function getLongitude() + { + return $this->longitude; + } + /** + * The longitude in degrees. It must be in the range [-180.0, +180.0]. + * + * Generated from protobuf field double longitude = 2; + * @param float $var + * @return $this + */ + public function setLongitude($var) + { + GPBUtil::checkDouble($var); + $this->longitude = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/LocalizedText.php b/vendor/Gcp/google/common-protos/src/Type/LocalizedText.php new file mode 100644 index 00000000..b8bf185a --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/LocalizedText.php @@ -0,0 +1,100 @@ +google.type.LocalizedText + */ +class LocalizedText extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Localized string in the language corresponding to `language_code' below. + * + * Generated from protobuf field string text = 1; + */ + protected $text = ''; + /** + * The text's BCP-47 language code, such as "en-US" or "sr-Latn". + * For more information, see + * http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + * + * Generated from protobuf field string language_code = 2; + */ + protected $language_code = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $text + * Localized string in the language corresponding to `language_code' below. + * @type string $language_code + * The text's BCP-47 language code, such as "en-US" or "sr-Latn". + * For more information, see + * http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\LocalizedText::initOnce(); + parent::__construct($data); + } + /** + * Localized string in the language corresponding to `language_code' below. + * + * Generated from protobuf field string text = 1; + * @return string + */ + public function getText() + { + return $this->text; + } + /** + * Localized string in the language corresponding to `language_code' below. + * + * Generated from protobuf field string text = 1; + * @param string $var + * @return $this + */ + public function setText($var) + { + GPBUtil::checkString($var, True); + $this->text = $var; + return $this; + } + /** + * The text's BCP-47 language code, such as "en-US" or "sr-Latn". + * For more information, see + * http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + * + * Generated from protobuf field string language_code = 2; + * @return string + */ + public function getLanguageCode() + { + return $this->language_code; + } + /** + * The text's BCP-47 language code, such as "en-US" or "sr-Latn". + * For more information, see + * http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. + * + * Generated from protobuf field string language_code = 2; + * @param string $var + * @return $this + */ + public function setLanguageCode($var) + { + GPBUtil::checkString($var, True); + $this->language_code = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Money.php b/vendor/Gcp/google/common-protos/src/Type/Money.php new file mode 100644 index 00000000..1ade39ee --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Money.php @@ -0,0 +1,147 @@ +google.type.Money + */ +class Money extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The three-letter currency code defined in ISO 4217. + * + * Generated from protobuf field string currency_code = 1; + */ + protected $currency_code = ''; + /** + * The whole units of the amount. + * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + * + * Generated from protobuf field int64 units = 2; + */ + protected $units = 0; + /** + * Number of nano (10^-9) units of the amount. + * The value must be between -999,999,999 and +999,999,999 inclusive. + * If `units` is positive, `nanos` must be positive or zero. + * If `units` is zero, `nanos` can be positive, zero, or negative. + * If `units` is negative, `nanos` must be negative or zero. + * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + * + * Generated from protobuf field int32 nanos = 3; + */ + protected $nanos = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $currency_code + * The three-letter currency code defined in ISO 4217. + * @type int|string $units + * The whole units of the amount. + * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + * @type int $nanos + * Number of nano (10^-9) units of the amount. + * The value must be between -999,999,999 and +999,999,999 inclusive. + * If `units` is positive, `nanos` must be positive or zero. + * If `units` is zero, `nanos` can be positive, zero, or negative. + * If `units` is negative, `nanos` must be negative or zero. + * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Money::initOnce(); + parent::__construct($data); + } + /** + * The three-letter currency code defined in ISO 4217. + * + * Generated from protobuf field string currency_code = 1; + * @return string + */ + public function getCurrencyCode() + { + return $this->currency_code; + } + /** + * The three-letter currency code defined in ISO 4217. + * + * Generated from protobuf field string currency_code = 1; + * @param string $var + * @return $this + */ + public function setCurrencyCode($var) + { + GPBUtil::checkString($var, True); + $this->currency_code = $var; + return $this; + } + /** + * The whole units of the amount. + * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + * + * Generated from protobuf field int64 units = 2; + * @return int|string + */ + public function getUnits() + { + return $this->units; + } + /** + * The whole units of the amount. + * For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. + * + * Generated from protobuf field int64 units = 2; + * @param int|string $var + * @return $this + */ + public function setUnits($var) + { + GPBUtil::checkInt64($var); + $this->units = $var; + return $this; + } + /** + * Number of nano (10^-9) units of the amount. + * The value must be between -999,999,999 and +999,999,999 inclusive. + * If `units` is positive, `nanos` must be positive or zero. + * If `units` is zero, `nanos` can be positive, zero, or negative. + * If `units` is negative, `nanos` must be negative or zero. + * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + * + * Generated from protobuf field int32 nanos = 3; + * @return int + */ + public function getNanos() + { + return $this->nanos; + } + /** + * Number of nano (10^-9) units of the amount. + * The value must be between -999,999,999 and +999,999,999 inclusive. + * If `units` is positive, `nanos` must be positive or zero. + * If `units` is zero, `nanos` can be positive, zero, or negative. + * If `units` is negative, `nanos` must be negative or zero. + * For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + * + * Generated from protobuf field int32 nanos = 3; + * @param int $var + * @return $this + */ + public function setNanos($var) + { + GPBUtil::checkInt32($var); + $this->nanos = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Month.php b/vendor/Gcp/google/common-protos/src/Type/Month.php new file mode 100644 index 00000000..a8ebde7c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Month.php @@ -0,0 +1,109 @@ +google.type.Month + */ +class Month +{ + /** + * The unspecified month. + * + * Generated from protobuf enum MONTH_UNSPECIFIED = 0; + */ + const MONTH_UNSPECIFIED = 0; + /** + * The month of January. + * + * Generated from protobuf enum JANUARY = 1; + */ + const JANUARY = 1; + /** + * The month of February. + * + * Generated from protobuf enum FEBRUARY = 2; + */ + const FEBRUARY = 2; + /** + * The month of March. + * + * Generated from protobuf enum MARCH = 3; + */ + const MARCH = 3; + /** + * The month of April. + * + * Generated from protobuf enum APRIL = 4; + */ + const APRIL = 4; + /** + * The month of May. + * + * Generated from protobuf enum MAY = 5; + */ + const MAY = 5; + /** + * The month of June. + * + * Generated from protobuf enum JUNE = 6; + */ + const JUNE = 6; + /** + * The month of July. + * + * Generated from protobuf enum JULY = 7; + */ + const JULY = 7; + /** + * The month of August. + * + * Generated from protobuf enum AUGUST = 8; + */ + const AUGUST = 8; + /** + * The month of September. + * + * Generated from protobuf enum SEPTEMBER = 9; + */ + const SEPTEMBER = 9; + /** + * The month of October. + * + * Generated from protobuf enum OCTOBER = 10; + */ + const OCTOBER = 10; + /** + * The month of November. + * + * Generated from protobuf enum NOVEMBER = 11; + */ + const NOVEMBER = 11; + /** + * The month of December. + * + * Generated from protobuf enum DECEMBER = 12; + */ + const DECEMBER = 12; + private static $valueToName = [self::MONTH_UNSPECIFIED => 'MONTH_UNSPECIFIED', self::JANUARY => 'JANUARY', self::FEBRUARY => 'FEBRUARY', self::MARCH => 'MARCH', self::APRIL => 'APRIL', self::MAY => 'MAY', self::JUNE => 'JUNE', self::JULY => 'JULY', self::AUGUST => 'AUGUST', self::SEPTEMBER => 'SEPTEMBER', self::OCTOBER => 'OCTOBER', self::NOVEMBER => 'NOVEMBER', self::DECEMBER => 'DECEMBER']; + 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/vendor/Gcp/google/common-protos/src/Type/PhoneNumber.php b/vendor/Gcp/google/common-protos/src/Type/PhoneNumber.php new file mode 100644 index 00000000..e1bdab30 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/PhoneNumber.php @@ -0,0 +1,215 @@ +google.type.PhoneNumber + */ +class PhoneNumber extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The phone number's extension. The extension is not standardized in ITU + * recommendations, except for being defined as a series of numbers with a + * maximum length of 40 digits. Other than digits, some other dialing + * characters such as ',' (indicating a wait) or '#' may be stored here. + * Note that no regions currently use extensions with short codes, so this + * field is normally only set in conjunction with an E.164 number. It is held + * separately from the E.164 number to allow for short code extensions in the + * future. + * + * Generated from protobuf field string extension = 3; + */ + protected $extension = ''; + protected $kind; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $e164_number + * The phone number, represented as a leading plus sign ('+'), followed by a + * phone number that uses a relaxed ITU E.164 format consisting of the + * country calling code (1 to 3 digits) and the subscriber number, with no + * additional spaces or formatting, e.g.: + * - correct: "+15552220123" + * - incorrect: "+1 (555) 222-01234 x123". + * The ITU E.164 format limits the latter to 12 digits, but in practice not + * all countries respect that, so we relax that restriction here. + * National-only numbers are not allowed. + * References: + * - https://www.itu.int/rec/T-REC-E.164-201011-I + * - https://en.wikipedia.org/wiki/E.164. + * - https://en.wikipedia.org/wiki/List_of_country_calling_codes + * @type \Google\Type\PhoneNumber\ShortCode $short_code + * A short code. + * Reference(s): + * - https://en.wikipedia.org/wiki/Short_code + * @type string $extension + * The phone number's extension. The extension is not standardized in ITU + * recommendations, except for being defined as a series of numbers with a + * maximum length of 40 digits. Other than digits, some other dialing + * characters such as ',' (indicating a wait) or '#' may be stored here. + * Note that no regions currently use extensions with short codes, so this + * field is normally only set in conjunction with an E.164 number. It is held + * separately from the E.164 number to allow for short code extensions in the + * future. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\PhoneNumber::initOnce(); + parent::__construct($data); + } + /** + * The phone number, represented as a leading plus sign ('+'), followed by a + * phone number that uses a relaxed ITU E.164 format consisting of the + * country calling code (1 to 3 digits) and the subscriber number, with no + * additional spaces or formatting, e.g.: + * - correct: "+15552220123" + * - incorrect: "+1 (555) 222-01234 x123". + * The ITU E.164 format limits the latter to 12 digits, but in practice not + * all countries respect that, so we relax that restriction here. + * National-only numbers are not allowed. + * References: + * - https://www.itu.int/rec/T-REC-E.164-201011-I + * - https://en.wikipedia.org/wiki/E.164. + * - https://en.wikipedia.org/wiki/List_of_country_calling_codes + * + * Generated from protobuf field string e164_number = 1; + * @return string + */ + public function getE164Number() + { + return $this->readOneof(1); + } + public function hasE164Number() + { + return $this->hasOneof(1); + } + /** + * The phone number, represented as a leading plus sign ('+'), followed by a + * phone number that uses a relaxed ITU E.164 format consisting of the + * country calling code (1 to 3 digits) and the subscriber number, with no + * additional spaces or formatting, e.g.: + * - correct: "+15552220123" + * - incorrect: "+1 (555) 222-01234 x123". + * The ITU E.164 format limits the latter to 12 digits, but in practice not + * all countries respect that, so we relax that restriction here. + * National-only numbers are not allowed. + * References: + * - https://www.itu.int/rec/T-REC-E.164-201011-I + * - https://en.wikipedia.org/wiki/E.164. + * - https://en.wikipedia.org/wiki/List_of_country_calling_codes + * + * Generated from protobuf field string e164_number = 1; + * @param string $var + * @return $this + */ + public function setE164Number($var) + { + GPBUtil::checkString($var, True); + $this->writeOneof(1, $var); + return $this; + } + /** + * A short code. + * Reference(s): + * - https://en.wikipedia.org/wiki/Short_code + * + * Generated from protobuf field .google.type.PhoneNumber.ShortCode short_code = 2; + * @return \Google\Type\PhoneNumber\ShortCode|null + */ + public function getShortCode() + { + return $this->readOneof(2); + } + public function hasShortCode() + { + return $this->hasOneof(2); + } + /** + * A short code. + * Reference(s): + * - https://en.wikipedia.org/wiki/Short_code + * + * Generated from protobuf field .google.type.PhoneNumber.ShortCode short_code = 2; + * @param \Google\Type\PhoneNumber\ShortCode $var + * @return $this + */ + public function setShortCode($var) + { + GPBUtil::checkMessage($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Type\PhoneNumber\ShortCode::class); + $this->writeOneof(2, $var); + return $this; + } + /** + * The phone number's extension. The extension is not standardized in ITU + * recommendations, except for being defined as a series of numbers with a + * maximum length of 40 digits. Other than digits, some other dialing + * characters such as ',' (indicating a wait) or '#' may be stored here. + * Note that no regions currently use extensions with short codes, so this + * field is normally only set in conjunction with an E.164 number. It is held + * separately from the E.164 number to allow for short code extensions in the + * future. + * + * Generated from protobuf field string extension = 3; + * @return string + */ + public function getExtension() + { + return $this->extension; + } + /** + * The phone number's extension. The extension is not standardized in ITU + * recommendations, except for being defined as a series of numbers with a + * maximum length of 40 digits. Other than digits, some other dialing + * characters such as ',' (indicating a wait) or '#' may be stored here. + * Note that no regions currently use extensions with short codes, so this + * field is normally only set in conjunction with an E.164 number. It is held + * separately from the E.164 number to allow for short code extensions in the + * future. + * + * Generated from protobuf field string extension = 3; + * @param string $var + * @return $this + */ + public function setExtension($var) + { + GPBUtil::checkString($var, True); + $this->extension = $var; + return $this; + } + /** + * @return string + */ + public function getKind() + { + return $this->whichOneof("kind"); + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/PhoneNumber/ShortCode.php b/vendor/Gcp/google/common-protos/src/Type/PhoneNumber/ShortCode.php new file mode 100644 index 00000000..0946fd20 --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/PhoneNumber/ShortCode.php @@ -0,0 +1,115 @@ +google.type.PhoneNumber.ShortCode + */ +class ShortCode extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Required. The BCP-47 region code of the location where calls to this + * short code can be made, such as "US" and "BB". + * Reference(s): + * - http://www.unicode.org/reports/tr35/#unicode_region_subtag + * + * Generated from protobuf field string region_code = 1; + */ + protected $region_code = ''; + /** + * Required. The short code digits, without a leading plus ('+') or country + * calling code, e.g. "611". + * + * Generated from protobuf field string number = 2; + */ + protected $number = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $region_code + * Required. The BCP-47 region code of the location where calls to this + * short code can be made, such as "US" and "BB". + * Reference(s): + * - http://www.unicode.org/reports/tr35/#unicode_region_subtag + * @type string $number + * Required. The short code digits, without a leading plus ('+') or country + * calling code, e.g. "611". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\PhoneNumber::initOnce(); + parent::__construct($data); + } + /** + * Required. The BCP-47 region code of the location where calls to this + * short code can be made, such as "US" and "BB". + * Reference(s): + * - http://www.unicode.org/reports/tr35/#unicode_region_subtag + * + * Generated from protobuf field string region_code = 1; + * @return string + */ + public function getRegionCode() + { + return $this->region_code; + } + /** + * Required. The BCP-47 region code of the location where calls to this + * short code can be made, such as "US" and "BB". + * Reference(s): + * - http://www.unicode.org/reports/tr35/#unicode_region_subtag + * + * Generated from protobuf field string region_code = 1; + * @param string $var + * @return $this + */ + public function setRegionCode($var) + { + GPBUtil::checkString($var, True); + $this->region_code = $var; + return $this; + } + /** + * Required. The short code digits, without a leading plus ('+') or country + * calling code, e.g. "611". + * + * Generated from protobuf field string number = 2; + * @return string + */ + public function getNumber() + { + return $this->number; + } + /** + * Required. The short code digits, without a leading plus ('+') or country + * calling code, e.g. "611". + * + * Generated from protobuf field string number = 2; + * @param string $var + * @return $this + */ + public function setNumber($var) + { + GPBUtil::checkString($var, True); + $this->number = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/PostalAddress.php b/vendor/Gcp/google/common-protos/src/Type/PostalAddress.php new file mode 100644 index 00000000..1cdf67ae --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/PostalAddress.php @@ -0,0 +1,592 @@ +google.type.PostalAddress + */ +class PostalAddress extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The schema revision of the `PostalAddress`. This must be set to 0, which is + * the latest revision. + * All new revisions **must** be backward compatible with old revisions. + * + * Generated from protobuf field int32 revision = 1; + */ + protected $revision = 0; + /** + * Required. CLDR region code of the country/region of the address. This + * is never inferred and it is up to the user to ensure the value is + * correct. See http://cldr.unicode.org/ and + * http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html + * for details. Example: "CH" for Switzerland. + * + * Generated from protobuf field string region_code = 2; + */ + protected $region_code = ''; + /** + * Optional. BCP-47 language code of the contents of this address (if + * known). This is often the UI language of the input form or is expected + * to match one of the languages used in the address' country/region, or their + * transliterated equivalents. + * This can affect formatting in certain countries, but is not critical + * to the correctness of the data and will never affect any validation or + * other non-formatting related operations. + * If this value is not known, it should be omitted (rather than specifying a + * possibly incorrect default). + * Examples: "zh-Hant", "ja", "ja-Latn", "en". + * + * Generated from protobuf field string language_code = 3; + */ + protected $language_code = ''; + /** + * Optional. Postal code of the address. Not all countries use or require + * postal codes to be present, but where they are used, they may trigger + * additional validation with other parts of the address (e.g. state/zip + * validation in the U.S.A.). + * + * Generated from protobuf field string postal_code = 4; + */ + protected $postal_code = ''; + /** + * Optional. Additional, country-specific, sorting code. This is not used + * in most regions. Where it is used, the value is either a string like + * "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number + * alone, representing the "sector code" (Jamaica), "delivery area indicator" + * (Malawi) or "post office indicator" (e.g. Côte d'Ivoire). + * + * Generated from protobuf field string sorting_code = 5; + */ + protected $sorting_code = ''; + /** + * Optional. Highest administrative subdivision which is used for postal + * addresses of a country or region. + * For example, this can be a state, a province, an oblast, or a prefecture. + * Specifically, for Spain this is the province and not the autonomous + * community (e.g. "Barcelona" and not "Catalonia"). + * Many countries don't use an administrative area in postal addresses. E.g. + * in Switzerland this should be left unpopulated. + * + * Generated from protobuf field string administrative_area = 6; + */ + protected $administrative_area = ''; + /** + * Optional. Generally refers to the city/town portion of the address. + * Examples: US city, IT comune, UK post town. + * In regions of the world where localities are not well defined or do not fit + * into this structure well, leave locality empty and use address_lines. + * + * Generated from protobuf field string locality = 7; + */ + protected $locality = ''; + /** + * Optional. Sublocality of the address. + * For example, this can be neighborhoods, boroughs, districts. + * + * Generated from protobuf field string sublocality = 8; + */ + protected $sublocality = ''; + /** + * Unstructured address lines describing the lower levels of an address. + * Because values in address_lines do not have type information and may + * sometimes contain multiple values in a single field (e.g. + * "Austin, TX"), it is important that the line order is clear. The order of + * address lines should be "envelope order" for the country/region of the + * address. In places where this can vary (e.g. Japan), address_language is + * used to make it explicit (e.g. "ja" for large-to-small ordering and + * "ja-Latn" or "en" for small-to-large). This way, the most specific line of + * an address can be selected based on the language. + * The minimum permitted structural representation of an address consists + * of a region_code with all remaining information placed in the + * address_lines. It would be possible to format such an address very + * approximately without geocoding, but no semantic reasoning could be + * made about any of the address components until it was at least + * partially resolved. + * Creating an address only containing a region_code and address_lines, and + * then geocoding is the recommended way to handle completely unstructured + * addresses (as opposed to guessing which parts of the address should be + * localities or administrative areas). + * + * Generated from protobuf field repeated string address_lines = 9; + */ + private $address_lines; + /** + * Optional. The recipient at the address. + * This field may, under certain circumstances, contain multiline information. + * For example, it might contain "care of" information. + * + * Generated from protobuf field repeated string recipients = 10; + */ + private $recipients; + /** + * Optional. The name of the organization at the address. + * + * Generated from protobuf field string organization = 11; + */ + protected $organization = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $revision + * The schema revision of the `PostalAddress`. This must be set to 0, which is + * the latest revision. + * All new revisions **must** be backward compatible with old revisions. + * @type string $region_code + * Required. CLDR region code of the country/region of the address. This + * is never inferred and it is up to the user to ensure the value is + * correct. See http://cldr.unicode.org/ and + * http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html + * for details. Example: "CH" for Switzerland. + * @type string $language_code + * Optional. BCP-47 language code of the contents of this address (if + * known). This is often the UI language of the input form or is expected + * to match one of the languages used in the address' country/region, or their + * transliterated equivalents. + * This can affect formatting in certain countries, but is not critical + * to the correctness of the data and will never affect any validation or + * other non-formatting related operations. + * If this value is not known, it should be omitted (rather than specifying a + * possibly incorrect default). + * Examples: "zh-Hant", "ja", "ja-Latn", "en". + * @type string $postal_code + * Optional. Postal code of the address. Not all countries use or require + * postal codes to be present, but where they are used, they may trigger + * additional validation with other parts of the address (e.g. state/zip + * validation in the U.S.A.). + * @type string $sorting_code + * Optional. Additional, country-specific, sorting code. This is not used + * in most regions. Where it is used, the value is either a string like + * "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number + * alone, representing the "sector code" (Jamaica), "delivery area indicator" + * (Malawi) or "post office indicator" (e.g. Côte d'Ivoire). + * @type string $administrative_area + * Optional. Highest administrative subdivision which is used for postal + * addresses of a country or region. + * For example, this can be a state, a province, an oblast, or a prefecture. + * Specifically, for Spain this is the province and not the autonomous + * community (e.g. "Barcelona" and not "Catalonia"). + * Many countries don't use an administrative area in postal addresses. E.g. + * in Switzerland this should be left unpopulated. + * @type string $locality + * Optional. Generally refers to the city/town portion of the address. + * Examples: US city, IT comune, UK post town. + * In regions of the world where localities are not well defined or do not fit + * into this structure well, leave locality empty and use address_lines. + * @type string $sublocality + * Optional. Sublocality of the address. + * For example, this can be neighborhoods, boroughs, districts. + * @type array|\Google\Protobuf\Internal\RepeatedField $address_lines + * Unstructured address lines describing the lower levels of an address. + * Because values in address_lines do not have type information and may + * sometimes contain multiple values in a single field (e.g. + * "Austin, TX"), it is important that the line order is clear. The order of + * address lines should be "envelope order" for the country/region of the + * address. In places where this can vary (e.g. Japan), address_language is + * used to make it explicit (e.g. "ja" for large-to-small ordering and + * "ja-Latn" or "en" for small-to-large). This way, the most specific line of + * an address can be selected based on the language. + * The minimum permitted structural representation of an address consists + * of a region_code with all remaining information placed in the + * address_lines. It would be possible to format such an address very + * approximately without geocoding, but no semantic reasoning could be + * made about any of the address components until it was at least + * partially resolved. + * Creating an address only containing a region_code and address_lines, and + * then geocoding is the recommended way to handle completely unstructured + * addresses (as opposed to guessing which parts of the address should be + * localities or administrative areas). + * @type array|\Google\Protobuf\Internal\RepeatedField $recipients + * Optional. The recipient at the address. + * This field may, under certain circumstances, contain multiline information. + * For example, it might contain "care of" information. + * @type string $organization + * Optional. The name of the organization at the address. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\PostalAddress::initOnce(); + parent::__construct($data); + } + /** + * The schema revision of the `PostalAddress`. This must be set to 0, which is + * the latest revision. + * All new revisions **must** be backward compatible with old revisions. + * + * Generated from protobuf field int32 revision = 1; + * @return int + */ + public function getRevision() + { + return $this->revision; + } + /** + * The schema revision of the `PostalAddress`. This must be set to 0, which is + * the latest revision. + * All new revisions **must** be backward compatible with old revisions. + * + * Generated from protobuf field int32 revision = 1; + * @param int $var + * @return $this + */ + public function setRevision($var) + { + GPBUtil::checkInt32($var); + $this->revision = $var; + return $this; + } + /** + * Required. CLDR region code of the country/region of the address. This + * is never inferred and it is up to the user to ensure the value is + * correct. See http://cldr.unicode.org/ and + * http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html + * for details. Example: "CH" for Switzerland. + * + * Generated from protobuf field string region_code = 2; + * @return string + */ + public function getRegionCode() + { + return $this->region_code; + } + /** + * Required. CLDR region code of the country/region of the address. This + * is never inferred and it is up to the user to ensure the value is + * correct. See http://cldr.unicode.org/ and + * http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html + * for details. Example: "CH" for Switzerland. + * + * Generated from protobuf field string region_code = 2; + * @param string $var + * @return $this + */ + public function setRegionCode($var) + { + GPBUtil::checkString($var, True); + $this->region_code = $var; + return $this; + } + /** + * Optional. BCP-47 language code of the contents of this address (if + * known). This is often the UI language of the input form or is expected + * to match one of the languages used in the address' country/region, or their + * transliterated equivalents. + * This can affect formatting in certain countries, but is not critical + * to the correctness of the data and will never affect any validation or + * other non-formatting related operations. + * If this value is not known, it should be omitted (rather than specifying a + * possibly incorrect default). + * Examples: "zh-Hant", "ja", "ja-Latn", "en". + * + * Generated from protobuf field string language_code = 3; + * @return string + */ + public function getLanguageCode() + { + return $this->language_code; + } + /** + * Optional. BCP-47 language code of the contents of this address (if + * known). This is often the UI language of the input form or is expected + * to match one of the languages used in the address' country/region, or their + * transliterated equivalents. + * This can affect formatting in certain countries, but is not critical + * to the correctness of the data and will never affect any validation or + * other non-formatting related operations. + * If this value is not known, it should be omitted (rather than specifying a + * possibly incorrect default). + * Examples: "zh-Hant", "ja", "ja-Latn", "en". + * + * Generated from protobuf field string language_code = 3; + * @param string $var + * @return $this + */ + public function setLanguageCode($var) + { + GPBUtil::checkString($var, True); + $this->language_code = $var; + return $this; + } + /** + * Optional. Postal code of the address. Not all countries use or require + * postal codes to be present, but where they are used, they may trigger + * additional validation with other parts of the address (e.g. state/zip + * validation in the U.S.A.). + * + * Generated from protobuf field string postal_code = 4; + * @return string + */ + public function getPostalCode() + { + return $this->postal_code; + } + /** + * Optional. Postal code of the address. Not all countries use or require + * postal codes to be present, but where they are used, they may trigger + * additional validation with other parts of the address (e.g. state/zip + * validation in the U.S.A.). + * + * Generated from protobuf field string postal_code = 4; + * @param string $var + * @return $this + */ + public function setPostalCode($var) + { + GPBUtil::checkString($var, True); + $this->postal_code = $var; + return $this; + } + /** + * Optional. Additional, country-specific, sorting code. This is not used + * in most regions. Where it is used, the value is either a string like + * "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number + * alone, representing the "sector code" (Jamaica), "delivery area indicator" + * (Malawi) or "post office indicator" (e.g. Côte d'Ivoire). + * + * Generated from protobuf field string sorting_code = 5; + * @return string + */ + public function getSortingCode() + { + return $this->sorting_code; + } + /** + * Optional. Additional, country-specific, sorting code. This is not used + * in most regions. Where it is used, the value is either a string like + * "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number + * alone, representing the "sector code" (Jamaica), "delivery area indicator" + * (Malawi) or "post office indicator" (e.g. Côte d'Ivoire). + * + * Generated from protobuf field string sorting_code = 5; + * @param string $var + * @return $this + */ + public function setSortingCode($var) + { + GPBUtil::checkString($var, True); + $this->sorting_code = $var; + return $this; + } + /** + * Optional. Highest administrative subdivision which is used for postal + * addresses of a country or region. + * For example, this can be a state, a province, an oblast, or a prefecture. + * Specifically, for Spain this is the province and not the autonomous + * community (e.g. "Barcelona" and not "Catalonia"). + * Many countries don't use an administrative area in postal addresses. E.g. + * in Switzerland this should be left unpopulated. + * + * Generated from protobuf field string administrative_area = 6; + * @return string + */ + public function getAdministrativeArea() + { + return $this->administrative_area; + } + /** + * Optional. Highest administrative subdivision which is used for postal + * addresses of a country or region. + * For example, this can be a state, a province, an oblast, or a prefecture. + * Specifically, for Spain this is the province and not the autonomous + * community (e.g. "Barcelona" and not "Catalonia"). + * Many countries don't use an administrative area in postal addresses. E.g. + * in Switzerland this should be left unpopulated. + * + * Generated from protobuf field string administrative_area = 6; + * @param string $var + * @return $this + */ + public function setAdministrativeArea($var) + { + GPBUtil::checkString($var, True); + $this->administrative_area = $var; + return $this; + } + /** + * Optional. Generally refers to the city/town portion of the address. + * Examples: US city, IT comune, UK post town. + * In regions of the world where localities are not well defined or do not fit + * into this structure well, leave locality empty and use address_lines. + * + * Generated from protobuf field string locality = 7; + * @return string + */ + public function getLocality() + { + return $this->locality; + } + /** + * Optional. Generally refers to the city/town portion of the address. + * Examples: US city, IT comune, UK post town. + * In regions of the world where localities are not well defined or do not fit + * into this structure well, leave locality empty and use address_lines. + * + * Generated from protobuf field string locality = 7; + * @param string $var + * @return $this + */ + public function setLocality($var) + { + GPBUtil::checkString($var, True); + $this->locality = $var; + return $this; + } + /** + * Optional. Sublocality of the address. + * For example, this can be neighborhoods, boroughs, districts. + * + * Generated from protobuf field string sublocality = 8; + * @return string + */ + public function getSublocality() + { + return $this->sublocality; + } + /** + * Optional. Sublocality of the address. + * For example, this can be neighborhoods, boroughs, districts. + * + * Generated from protobuf field string sublocality = 8; + * @param string $var + * @return $this + */ + public function setSublocality($var) + { + GPBUtil::checkString($var, True); + $this->sublocality = $var; + return $this; + } + /** + * Unstructured address lines describing the lower levels of an address. + * Because values in address_lines do not have type information and may + * sometimes contain multiple values in a single field (e.g. + * "Austin, TX"), it is important that the line order is clear. The order of + * address lines should be "envelope order" for the country/region of the + * address. In places where this can vary (e.g. Japan), address_language is + * used to make it explicit (e.g. "ja" for large-to-small ordering and + * "ja-Latn" or "en" for small-to-large). This way, the most specific line of + * an address can be selected based on the language. + * The minimum permitted structural representation of an address consists + * of a region_code with all remaining information placed in the + * address_lines. It would be possible to format such an address very + * approximately without geocoding, but no semantic reasoning could be + * made about any of the address components until it was at least + * partially resolved. + * Creating an address only containing a region_code and address_lines, and + * then geocoding is the recommended way to handle completely unstructured + * addresses (as opposed to guessing which parts of the address should be + * localities or administrative areas). + * + * Generated from protobuf field repeated string address_lines = 9; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getAddressLines() + { + return $this->address_lines; + } + /** + * Unstructured address lines describing the lower levels of an address. + * Because values in address_lines do not have type information and may + * sometimes contain multiple values in a single field (e.g. + * "Austin, TX"), it is important that the line order is clear. The order of + * address lines should be "envelope order" for the country/region of the + * address. In places where this can vary (e.g. Japan), address_language is + * used to make it explicit (e.g. "ja" for large-to-small ordering and + * "ja-Latn" or "en" for small-to-large). This way, the most specific line of + * an address can be selected based on the language. + * The minimum permitted structural representation of an address consists + * of a region_code with all remaining information placed in the + * address_lines. It would be possible to format such an address very + * approximately without geocoding, but no semantic reasoning could be + * made about any of the address components until it was at least + * partially resolved. + * Creating an address only containing a region_code and address_lines, and + * then geocoding is the recommended way to handle completely unstructured + * addresses (as opposed to guessing which parts of the address should be + * localities or administrative areas). + * + * Generated from protobuf field repeated string address_lines = 9; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setAddressLines($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->address_lines = $arr; + return $this; + } + /** + * Optional. The recipient at the address. + * This field may, under certain circumstances, contain multiline information. + * For example, it might contain "care of" information. + * + * Generated from protobuf field repeated string recipients = 10; + * @return \Google\Protobuf\Internal\RepeatedField + */ + public function getRecipients() + { + return $this->recipients; + } + /** + * Optional. The recipient at the address. + * This field may, under certain circumstances, contain multiline information. + * For example, it might contain "care of" information. + * + * Generated from protobuf field repeated string recipients = 10; + * @param array|\Google\Protobuf\Internal\RepeatedField $var + * @return $this + */ + public function setRecipients($var) + { + $arr = GPBUtil::checkRepeatedField($var, \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\GPBType::STRING); + $this->recipients = $arr; + return $this; + } + /** + * Optional. The name of the organization at the address. + * + * Generated from protobuf field string organization = 11; + * @return string + */ + public function getOrganization() + { + return $this->organization; + } + /** + * Optional. The name of the organization at the address. + * + * Generated from protobuf field string organization = 11; + * @param string $var + * @return $this + */ + public function setOrganization($var) + { + GPBUtil::checkString($var, True); + $this->organization = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/Quaternion.php b/vendor/Gcp/google/common-protos/src/Type/Quaternion.php new file mode 100644 index 00000000..c323a2dc --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/Quaternion.php @@ -0,0 +1,196 @@ +google.type.Quaternion + */ +class Quaternion extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * The x component. + * + * Generated from protobuf field double x = 1; + */ + protected $x = 0.0; + /** + * The y component. + * + * Generated from protobuf field double y = 2; + */ + protected $y = 0.0; + /** + * The z component. + * + * Generated from protobuf field double z = 3; + */ + protected $z = 0.0; + /** + * The scalar component. + * + * Generated from protobuf field double w = 4; + */ + protected $w = 0.0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $x + * The x component. + * @type float $y + * The y component. + * @type float $z + * The z component. + * @type float $w + * The scalar component. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Quaternion::initOnce(); + parent::__construct($data); + } + /** + * The x component. + * + * Generated from protobuf field double x = 1; + * @return float + */ + public function getX() + { + return $this->x; + } + /** + * The x component. + * + * Generated from protobuf field double x = 1; + * @param float $var + * @return $this + */ + public function setX($var) + { + GPBUtil::checkDouble($var); + $this->x = $var; + return $this; + } + /** + * The y component. + * + * Generated from protobuf field double y = 2; + * @return float + */ + public function getY() + { + return $this->y; + } + /** + * The y component. + * + * Generated from protobuf field double y = 2; + * @param float $var + * @return $this + */ + public function setY($var) + { + GPBUtil::checkDouble($var); + $this->y = $var; + return $this; + } + /** + * The z component. + * + * Generated from protobuf field double z = 3; + * @return float + */ + public function getZ() + { + return $this->z; + } + /** + * The z component. + * + * Generated from protobuf field double z = 3; + * @param float $var + * @return $this + */ + public function setZ($var) + { + GPBUtil::checkDouble($var); + $this->z = $var; + return $this; + } + /** + * The scalar component. + * + * Generated from protobuf field double w = 4; + * @return float + */ + public function getW() + { + return $this->w; + } + /** + * The scalar component. + * + * Generated from protobuf field double w = 4; + * @param float $var + * @return $this + */ + public function setW($var) + { + GPBUtil::checkDouble($var); + $this->w = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/TimeOfDay.php b/vendor/Gcp/google/common-protos/src/Type/TimeOfDay.php new file mode 100644 index 00000000..6ee0e92c --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/TimeOfDay.php @@ -0,0 +1,165 @@ +google.type.TimeOfDay + */ +class TimeOfDay extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose + * to allow the value "24:00:00" for scenarios like business closing time. + * + * Generated from protobuf field int32 hours = 1; + */ + protected $hours = 0; + /** + * Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 2; + */ + protected $minutes = 0; + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may + * allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 3; + */ + protected $seconds = 0; + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + * + * Generated from protobuf field int32 nanos = 4; + */ + protected $nanos = 0; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $hours + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose + * to allow the value "24:00:00" for scenarios like business closing time. + * @type int $minutes + * Minutes of hour of day. Must be from 0 to 59. + * @type int $seconds + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may + * allow the value 60 if it allows leap-seconds. + * @type int $nanos + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Timeofday::initOnce(); + parent::__construct($data); + } + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose + * to allow the value "24:00:00" for scenarios like business closing time. + * + * Generated from protobuf field int32 hours = 1; + * @return int + */ + public function getHours() + { + return $this->hours; + } + /** + * Hours of day in 24 hour format. Should be from 0 to 23. An API may choose + * to allow the value "24:00:00" for scenarios like business closing time. + * + * Generated from protobuf field int32 hours = 1; + * @param int $var + * @return $this + */ + public function setHours($var) + { + GPBUtil::checkInt32($var); + $this->hours = $var; + return $this; + } + /** + * Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 2; + * @return int + */ + public function getMinutes() + { + return $this->minutes; + } + /** + * Minutes of hour of day. Must be from 0 to 59. + * + * Generated from protobuf field int32 minutes = 2; + * @param int $var + * @return $this + */ + public function setMinutes($var) + { + GPBUtil::checkInt32($var); + $this->minutes = $var; + return $this; + } + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may + * allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 3; + * @return int + */ + public function getSeconds() + { + return $this->seconds; + } + /** + * Seconds of minutes of the time. Must normally be from 0 to 59. An API may + * allow the value 60 if it allows leap-seconds. + * + * Generated from protobuf field int32 seconds = 3; + * @param int $var + * @return $this + */ + public function setSeconds($var) + { + GPBUtil::checkInt32($var); + $this->seconds = $var; + return $this; + } + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + * + * Generated from protobuf field int32 nanos = 4; + * @return int + */ + public function getNanos() + { + return $this->nanos; + } + /** + * Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + * + * Generated from protobuf field int32 nanos = 4; + * @param int $var + * @return $this + */ + public function setNanos($var) + { + GPBUtil::checkInt32($var); + $this->nanos = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/common-protos/src/Type/TimeZone.php b/vendor/Gcp/google/common-protos/src/Type/TimeZone.php new file mode 100644 index 00000000..ec2ec11b --- /dev/null +++ b/vendor/Gcp/google/common-protos/src/Type/TimeZone.php @@ -0,0 +1,93 @@ +google.type.TimeZone + */ +class TimeZone extends \DeliciousBrains\WP_Offload_Media\Gcp\Google\Protobuf\Internal\Message +{ + /** + * IANA Time Zone Database time zone, e.g. "America/New_York". + * + * Generated from protobuf field string id = 1; + */ + protected $id = ''; + /** + * Optional. IANA Time Zone Database version number, e.g. "2019a". + * + * Generated from protobuf field string version = 2; + */ + protected $version = ''; + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $id + * IANA Time Zone Database time zone, e.g. "America/New_York". + * @type string $version + * Optional. IANA Time Zone Database version number, e.g. "2019a". + * } + */ + public function __construct($data = NULL) + { + \DeliciousBrains\WP_Offload_Media\Gcp\GPBMetadata\Google\Type\Datetime::initOnce(); + parent::__construct($data); + } + /** + * IANA Time Zone Database time zone, e.g. "America/New_York". + * + * Generated from protobuf field string id = 1; + * @return string + */ + public function getId() + { + return $this->id; + } + /** + * IANA Time Zone Database time zone, e.g. "America/New_York". + * + * Generated from protobuf field string id = 1; + * @param string $var + * @return $this + */ + public function setId($var) + { + GPBUtil::checkString($var, True); + $this->id = $var; + return $this; + } + /** + * Optional. IANA Time Zone Database version number, e.g. "2019a". + * + * Generated from protobuf field string version = 2; + * @return string + */ + public function getVersion() + { + return $this->version; + } + /** + * Optional. IANA Time Zone Database version number, e.g. "2019a". + * + * Generated from protobuf field string version = 2; + * @param string $var + * @return $this + */ + public function setVersion($var) + { + GPBUtil::checkString($var, True); + $this->version = $var; + return $this; + } +} diff --git a/vendor/Gcp/google/crc32/CONTRIBUTING.md b/vendor/Gcp/google/crc32/CONTRIBUTING.md deleted file mode 100644 index ae4e0432..00000000 --- a/vendor/Gcp/google/crc32/CONTRIBUTING.md +++ /dev/null @@ -1,28 +0,0 @@ -# How to Contribute - -We'd love to accept your patches and contributions to this project. There are -just a few small guidelines you need to follow. - -## Contributor License Agreement - -Contributions to this project must be accompanied by a Contributor License -Agreement. You (or your employer) retain the copyright to your contribution; -this simply gives us permission to use and redistribute your contributions as -part of the project. Head over to to see -your current agreements on file or to sign a new one. - -You generally only need to submit a CLA once, so if you've already submitted one -(even if it was for a different project), you probably don't need to do it -again. - -## Code reviews - -All submissions, including submissions by project members, require review. We -use GitHub pull requests for this purpose. Consult -[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more -information on using pull requests. - -## Community Guidelines - -This project follows [Google's Open Source Community -Guidelines](https://opensource.google.com/conduct/). \ No newline at end of file diff --git a/vendor/Gcp/google/crc32/README.md b/vendor/Gcp/google/crc32/README.md deleted file mode 100644 index c2bbc58e..00000000 --- a/vendor/Gcp/google/crc32/README.md +++ /dev/null @@ -1,138 +0,0 @@ -# php-crc32 - -![Build Status](https://github.com/google/php-crc32/actions/workflows/test.yml/badge.svg) - -by [Andrew Brampton](https://bramp.net) - -**Deprecated**: Since PHP 8.0, the crc32 algorithms within PHP are using [hardware accelerated instructions](https://github.com/php/php-src/commit/c3299d7dab15aeed52a34535f1967d426f5327de), and are surprisingly fast. Thus this extension is not needed anymore! - -CRC32 implementations, that support all crc32 polynomials, as well as (if you -install the pecl extension) hardware accelerated versions of CRC32C (Castagnoli). - -Supports PHP 7.4 though PHP 8.2. Older PHP versions are supported with "v0.1.0". - -# Usage - -```php -require 'vendor/autoload.php'; - -use Google\CRC32\CRC32; - -$crc = CRC32::create(CRC32::CASTAGNOLI); -$crc->update('hello'); -echo $crc->hash(); -``` - -Depending on the environment and the polynomial, `CRC32::create` will choose -the fastest available version, and return one of the following classes: - -* `Google\CRC32\PHP` - A pure PHP implementation. -* `Google\CRC32\Builtin` - A [PHP Hash framework](http://php.net/manual/en/book.hash.php) implementation. -* `Google\CRC32\Google` - A hardware accelerated implementation (using [google/crc32c](https://github.com/google/crc32c)). - -When reading 1M byte chunks, using `CRC32::CASTAGNOLI` with PHP 7.4 on a 2014 Macbook Pro we get the following performance (higher is better): - -``` -Google\CRC32\PHP 12.27 MB/s -Google\CRC32\Builtin 468.74 MB/s (available since PHP 7.4) -Google\CRC32\Google 24,684.46 MB/s (using crc32c.so) -``` - -# Install - -```shell -$ composer require google/crc32 -``` - -# crc32c.so - -To use the hardware accelerated, a custom PHP extension must be installed. This makes use of [google/crc32c](https://github.com/google/crc32c) which provides a highly optomised `CRC32C` (Castagnoli) implementation using the SSE 4.2 instruction set of Intel CPUs. - -The extension can be installed from pecl, or compiled from stratch. - -```shell -TODO pecl install crc32c -``` - -Once installed or compiled, you'll need to add `extension=crc32c.so` to your php.ini file. - -## Compile (Linux / Mac) - -Ensure that [composer](https://getcomposer.org), build tools (e.g [build-essential](https://packages.debian.org/sid/devel/build-essential), [cmake](https://packages.debian.org/sid/devel/cmake), etc), and php dev headers (e.g [php-dev](https://packages.debian.org/sid/php/php-dev)) are installed. - -Simple (using Makefile): - -```shell -make test -``` - -Alternatively (manually): - -```shell -cd ext - -# Install the google/crc32c library -./install_crc32c.sh # From source (recommended) - -# or use your favorite package manager, e.g. -# brew install crc32c - -# Prepare the build environment -phpize -./configure - -# or if using a custom crc32c -# ./configure --with-crc32c=$(brew --prefix crc32c) - -## Build and test -make test -``` - -The extension will now be at `ext/modules/crc32c.so`. This file should be copied to your [extension directory](https://php.net/extension-dir) and reference in your php.ini. - -``` -# php.ini -extension=crc32c.so -``` - -## Testing - -`make test` will test with the current PHP. `make test_all` will search for available -PHP installs, and test with all of them. - -## Benchmark - -To compare the performance of the different `CRC32C` implementations, run `make benchmark`. - -# Related - -* https://bugs.php.net/bug.php?id=71890 - -# TODO - -- [ ] Test if this works on 32 bit machine. -- [x] Add php unit (or similar) testing. -- [x] Publish to packagist -- [ ] Publish to pecl (https://pecl.php.net/account-request.php) -- [x] Update instructions for linux. - - -# Licence (Apache 2) - -*This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.* - -``` -Copyright 2023 Google Inc. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -``` diff --git a/vendor/Gcp/google/crc32/composer.json b/vendor/Gcp/google/crc32/composer.json deleted file mode 100644 index 111d0e7c..00000000 --- a/vendor/Gcp/google/crc32/composer.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "google\/crc32", - "description": "Various CRC32 implementations", - "homepage": "https:\/\/github.com\/google\/php-crc32", - "type": "library", - "license": "Apache-2.0", - "authors": [ - { - "name": "Andrew Brampton", - "email": "bramp@google.com" - } - ], - "require": { - "php": ">=7.4" - }, - "require-dev": { - "friendsofphp\/php-cs-fixer": "v3.15", - "phpunit\/phpunit": "^9" - }, - "autoload": { - "psr-4": { - "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\CRC32\\": "src" - } - } -} \ No newline at end of file diff --git a/vendor/Gcp/google/crc32/crc32_benchmark.php b/vendor/Gcp/google/crc32/crc32_benchmark.php deleted file mode 100644 index fdd44984..00000000 --- a/vendor/Gcp/google/crc32/crc32_benchmark.php +++ /dev/null @@ -1,104 +0,0 @@ -update($chunk); - $i++; - $now = \microtime(\true); - $duration = $now - $start; - if ($duration >= \DeliciousBrains\WP_Offload_Media\Gcp\max_duration) { - break; - } - if ($duration >= \DeliciousBrains\WP_Offload_Media\Gcp\min_duration && $i >= \DeliciousBrains\WP_Offload_Media\Gcp\min_iterations) { - break; - } - } - // Very quick sanity check - if ($crc->hash() == '00000000') { - exit($name . ' crc check failed'); - } - $bytes = $i * $chunk_size; - echo \sprintf("%s\t%10d\t%5d\t%8.2f MB/s\n", $name, $chunk_size, $i, $bytes / ($now - $start) / 1000000); -} -foreach (array(256, 4096, 1048576, 16777216) as $chunk_size) { - test(new PHP(CRC32::CASTAGNOLI), $chunk_size); - //test(new PHPSlicedBy4(CRC32::CASTAGNOLI), $chunk_size); - test(new Builtin(CRC32::CASTAGNOLI), $chunk_size); - test(new Google(), $chunk_size); -} diff --git a/vendor/Gcp/google/crc32/ext/config.m4 b/vendor/Gcp/google/crc32/ext/config.m4 deleted file mode 100644 index c3d3d2e8..00000000 --- a/vendor/Gcp/google/crc32/ext/config.m4 +++ /dev/null @@ -1,63 +0,0 @@ -dnl Copyright 2019 Google Inc. All Rights Reserved. -dnl -dnl Licensed under the Apache License, Version 2.0 (the "License"); -dnl you may not use this file except in compliance with the License. -dnl You may obtain a copy of the License at -dnl -dnl http://www.apache.org/licenses/LICENSE-2.0 -dnl -dnl Unless required by applicable law or agreed to in writing, software -dnl distributed under the License is distributed on an "AS-IS" BASIS, -dnl WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -dnl See the License for the specific language governing permissions and -dnl limitations under the License. -dnl - -PHP_ARG_WITH(crc32c, for crc32c support, -[ --with-crc32c[=DIR] Include crc32c support. File is the optional path to google/crc32c]) - -if test "$PHP_CRC32C" != "no"; then - PHP_REQUIRE_CXX() # The external crc32c library uses C++. - - if test -r $PHP_CRC32C/; then - SEARCH_PATH=$PHP_CRC32C - else - SEARCH_PATH="$PWD/crc32c/build /usr/local /usr" - fi - - - AC_MSG_CHECKING([for crc32c files]) - SEARCH_FOR="include/crc32c/crc32c.h" - - for i in $SEARCH_PATH ; do - if test -r $i/$SEARCH_FOR; then - CRC32C_DIR=$i - AC_MSG_RESULT(found in $i) - fi - done - - # --with-crc32c -> check with-path - if test -z "$CRC32C_DIR"; then - AC_MSG_RESULT([not found]) - AC_MSG_ERROR([Please install the google/crc32c package, and use --with-crc32c]) - fi - - # --with-crc32c -> add include path - PHP_ADD_INCLUDE($CRC32C_DIR/include) - - # --with-crc32c -> check for lib and symbol presence - LIBNAME=crc32c - LIBSYMBOL=crc32c_extend - - PHP_CHECK_LIBRARY($LIBNAME, $LIBSYMBOL, - [ - PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $CRC32C_DIR/$PHP_LIBDIR, CRC32C_SHARED_LIBADD) - ],[ - AC_MSG_FAILURE([wrong crc32c lib version or lib not found]) - ],[ - -L$CRC32C_DIR/$PHP_LIBDIR -lm - ]) - - PHP_SUBST(CRC32C_SHARED_LIBADD) - PHP_NEW_EXTENSION(crc32c, hash_crc32c.c php_crc32c.c, $ext_shared, , -Wall -Werror) -fi diff --git a/vendor/Gcp/google/crc32/ext/hash_crc32c.c b/vendor/Gcp/google/crc32/ext/hash_crc32c.c deleted file mode 100644 index a622a1c6..00000000 --- a/vendor/Gcp/google/crc32/ext/hash_crc32c.c +++ /dev/null @@ -1,75 +0,0 @@ -/** - * Copyright 2019 Google Inc. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * crc32c hash extension for PHP - * - * This file contains the crc32c hash function for - * http://php.net/manual/en/function.hash.php - */ -#include "php_crc32c.h" - -#include "ext/hash/php_hash.h" -#include "ext/hash/php_hash_crc32.h" - -#include "crc32c/crc32c.h" - -PHP_HASH_API void CRC32CInit(PHP_CRC32_CTX *context -#if PHP_API_VERSION >= 20201213 -, ZEND_ATTRIBUTE_UNUSED HashTable *args -#endif -) -{ - context->state = 0; -} - -PHP_HASH_API void CRC32CUpdate(PHP_CRC32_CTX *context, const unsigned char *input, size_t len) -{ - context->state = crc32c_extend(context->state, input, len); -} - -PHP_HASH_API void CRC32CFinal(uint8_t crc[4], PHP_CRC32_CTX *context) -{ - int2byte(context->state, crc); - context->state = 0; -} - -PHP_HASH_API int CRC32CCopy(const php_hash_ops *ops, PHP_CRC32_CTX *orig_context, PHP_CRC32_CTX *copy_context) -{ - copy_context->state = orig_context->state; - return SUCCESS; -} - -const php_hash_ops crc32_ops = { -#if PHP_API_VERSION >= 20200620 - "crc32c", -#endif - (php_hash_init_func_t) CRC32CInit, - (php_hash_update_func_t) CRC32CUpdate, - (php_hash_final_func_t) CRC32CFinal, - (php_hash_copy_func_t) CRC32CCopy, -#if PHP_API_VERSION >= 20200620 - php_hash_serialize, - php_hash_unserialize, - PHP_CRC32_SPEC, -#endif - 4, /* what to say here? */ - 4, - sizeof(PHP_CRC32_CTX), -#if PHP_API_VERSION >= 20170718 - 0 -#endif -}; \ No newline at end of file diff --git a/vendor/Gcp/google/crc32/ext/install_crc32c.sh b/vendor/Gcp/google/crc32/ext/install_crc32c.sh deleted file mode 100644 index 96b27c52..00000000 --- a/vendor/Gcp/google/crc32/ext/install_crc32c.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh -# Used to build and install the google/crc32c library. - -## -# Copyright 2019 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -## - -git clone https://github.com/google/crc32c - -cd crc32c -git submodule update --init --recursive - -mkdir build -cd build -cmake -DCRC32C_BUILD_TESTS=0 \ - -DCRC32C_BUILD_BENCHMARKS=0 \ - -DCRC32C_USE_GLOG=0 \ - -DBUILD_SHARED_LIBS=0 \ - -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE \ - -DCMAKE_INSTALL_PREFIX:PATH=$PWD \ - .. -cmake --build . --target install diff --git a/vendor/Gcp/google/crc32/ext/php_crc32c.c b/vendor/Gcp/google/crc32/ext/php_crc32c.c deleted file mode 100644 index ba08657b..00000000 --- a/vendor/Gcp/google/crc32/ext/php_crc32c.c +++ /dev/null @@ -1,174 +0,0 @@ -/** - * Copyright 2019 Google Inc. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * crc32c extension for PHP - * - * This file sets up the crc32c module, and provide the 'crc32c' function. - */ - -#include "php_crc32c.h" - -#include "ext/hash/php_hash.h" -#include "ext/standard/info.h" - -#include "crc32c/crc32c.h" - -extern const php_hash_ops crc32_ops; - -static uint32_t byte2int(const uint8_t hash[4]) { - return (hash[0] << 24) | (hash[1] << 16) | (hash[2] << 8) | hash[3]; -} - -/* {{{ int crc32c( string $data [, int $crc ] ) - */ -PHP_FUNCTION(crc32c) -{ - char *data_arg = NULL; - size_t data_len = 0; - char *crc_arg = NULL; - size_t crc_len = 0; - -#if PHP_API_VERSION >= 20151012 /* >= PHP 7.0 */ - // fast_zpp is a faster way to parse paramters. - ZEND_PARSE_PARAMETERS_START(1, 2) - Z_PARAM_STRING(data_arg, data_len) - Z_PARAM_OPTIONAL - Z_PARAM_STRING_EX(crc_arg, crc_len, /* check_null */ 1, 0) - ZEND_PARSE_PARAMETERS_END_EX(RETURN_FALSE); -#else - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s!", &data_arg, &data_len, &crc_arg, &crc_len) == FAILURE) { - RETURN_BOOL(false); - } -#endif - - uint32_t crc = 0; - - if (crc_len == 4) { - crc = byte2int((uint8_t *)crc_arg); - - } else if (crc_arg != NULL) { - zend_error(E_WARNING, "crc32c(): Supplied crc must be a 4 byte string"); - RETURN_BOOL(false); - } - - crc = crc32c_extend(crc, (const uint8_t *)data_arg, data_len); - - uint8_t hash[4]; - int2byte(crc, hash); - -#if PHP_API_VERSION >= 20151012 /* >= PHP 7.0 */ - RETURN_STRINGL((const char *)hash, sizeof(hash)); -#else - RETURN_STRINGL((const char *)hash, sizeof(hash), /* dup */ 1); -#endif -} -/* }}}*/ - - -/* {{{ PHP_RINIT_FUNCTION - */ -PHP_RINIT_FUNCTION(crc32c) -{ -#if PHP_VERSION_ID >= 70000 -# if defined(ZTS) && defined(COMPILE_DL_CRC32C) - ZEND_TSRMLS_CACHE_UPDATE(); -# endif -#endif - - return SUCCESS; -} -/* }}} */ - -/* {{{ PHP_MINIT_FUNCTION - */ -PHP_MINIT_FUNCTION(crc32c) -{ - php_hash_register_algo("crc32c", &crc32_ops); - return SUCCESS; -} -/* }}} */ - -/* {{{ PHP_MSHUTDOWN_FUNCTION - */ -PHP_MSHUTDOWN_FUNCTION(crc32c) -{ - // TODO Unregister php_hash_register_algo - return SUCCESS; -} -/* }}} */ - -/* {{{ PHP_MINFO_FUNCTION - */ -PHP_MINFO_FUNCTION(crc32c) -{ - php_info_print_table_start(); - php_info_print_table_header(2, "Google CRC32C support", "enabled"); - php_info_print_table_end(); -} -/* }}} */ - -/* {{{ arginfo - */ -ZEND_BEGIN_ARG_INFO_EX(arginfo_crc32c, 0, 0, 1) - ZEND_ARG_INFO(0, str) - ZEND_ARG_INFO(0, crc) -ZEND_END_ARG_INFO() -/* }}} */ - -/* {{{ crc32c_functions[] - */ -static const zend_function_entry crc32c_functions[] = { - PHP_FE(crc32c, arginfo_crc32c) - PHP_FE_END -}; -/* }}} */ - -/* {{{ crc32c_deps - */ -static const zend_module_dep crc32c_deps[] = { - ZEND_MOD_REQUIRED("hash") - ZEND_MOD_END -}; -/* }}} */ - -/* {{{ crc32c_module_entry - */ -zend_module_entry crc32c_module_entry = { - STANDARD_MODULE_HEADER_EX, NULL, - crc32c_deps, /* Module dependencies */ - "crc32c", /* Extension name */ - crc32c_functions, /* zend_function_entry */ - PHP_MINIT(crc32c), /* PHP_MINIT - Module initialization */ - PHP_MSHUTDOWN(crc32c), /* PHP_MSHUTDOWN - Module shutdown */ - PHP_RINIT(crc32c), /* PHP_RINIT - Request initialization */ - NULL, /* PHP_RSHUTDOWN - Request shutdown */ - PHP_MINFO(crc32c), /* PHP_MINFO - Module info */ - PHP_CRC32C_VERSION, /* Version */ - STANDARD_MODULE_PROPERTIES -}; -/* }}} */ - -#ifdef COMPILE_DL_CRC32C - -# if PHP_VERSION_ID >= 70000 -# ifdef ZTS -ZEND_TSRMLS_CACHE_DEFINE() -# endif -# endif /* PHP_VERSION_ID >= 70000 */ - -ZEND_GET_MODULE(crc32c) -#endif /* COMPILE_DL_CRC32C */ diff --git a/vendor/Gcp/google/crc32/ext/php_crc32c.h b/vendor/Gcp/google/crc32/ext/php_crc32c.h deleted file mode 100644 index 661d79f2..00000000 --- a/vendor/Gcp/google/crc32/ext/php_crc32c.h +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright 2019 Google Inc. All Rights Reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * crc32c extension for PHP - */ -#ifndef PHP_CRC32C_H -# define PHP_CRC32C_H - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "php.h" - -#include -#include - -#ifdef ZTS -# include "TSRM.h" -#endif - -extern zend_module_entry crc32c_module_entry; - -# define PHP_CRC32C_VERSION "1.0.0" - -# if PHP_VERSION_ID >= 70000 -# if defined(ZTS) && defined(COMPILE_DL_CRC32C) -ZEND_TSRMLS_CACHE_EXTERN() -# endif -# endif - -static void int2byte(uint32_t i, uint8_t b[4]) { - b[0] = (uint8_t) ((i >> 24) & 0xff); - b[1] = (uint8_t) ((i >> 16) & 0xff); - b[2] = (uint8_t) ((i >> 8) & 0xff); - b[3] = (uint8_t) (i & 0xff); -} - -#endif /* PHP_CRC32C_H */ diff --git a/vendor/Gcp/google/crc32/src/Builtin.php b/vendor/Gcp/google/crc32/src/Builtin.php deleted file mode 100644 index bafd9128..00000000 --- a/vendor/Gcp/google/crc32/src/Builtin.php +++ /dev/null @@ -1,75 +0,0 @@ - 'crc32b', CRC32::CASTAGNOLI => 'crc32c']; - /** - * Returns true if this $polynomial is supported by the builtin PHP hash function. - * - * @param integer $polynomial The polynomial - * - * @return boolean - */ - public static function supports($polynomial) - { - if (!isset(self::$mapping[$polynomial])) { - return \false; - } - $algo = self::$mapping[$polynomial]; - return \in_array($algo, \hash_algos()); - } - public function __construct($polynomial) - { - if (!self::supports($polynomial)) { - throw new \InvalidArgumentException("hash_algos() does not list this polynomial."); - } - $this->algo = self::$mapping[$polynomial]; - $this->reset(); - } - public function reset() - { - $this->hc = \hash_init($this->algo); - } - public function update($data) - { - \hash_update($this->hc, $data); - } - public function hash($raw_output = \false) - { - // hash_final will destory the Hash Context resource, so operate on a copy. - $hc = \hash_copy($this->hc); - return \hash_final($hc, $raw_output); - } - public function version() - { - return $this->algo . ' PHP HASH'; - } - public function __clone() - { - $this->hc = \hash_copy($this->hc); - } -} diff --git a/vendor/Gcp/google/crc32/src/CRC32.php b/vendor/Gcp/google/crc32/src/CRC32.php deleted file mode 100644 index 15ee27cc..00000000 --- a/vendor/Gcp/google/crc32/src/CRC32.php +++ /dev/null @@ -1,97 +0,0 @@ -update('hello'); - * - * echo $crc->hash(); - * ``` - */ -class CRC32 -{ - use CRCTrait; - /** - * IEEE polynomial as used by ethernet (IEEE 802.3), v.42, fddi, gzip, - * zip, png, ... - */ - public const IEEE = 0xedb88320; - /** - * Castagnoli's polynomial, used in iSCSI, SCTP, Google Cloud Storage, - * Apache Kafka, and has hardware-accelerated in modern intel CPUs. - * https://doi.org/10.1109/26.231911 - */ - public const CASTAGNOLI = 0x82f63b78; - /** - * Koopman's polynomial. - * https://doi.org/10.1109/DSN.2002.1028931 - */ - public const KOOPMAN = 0xeb31d82e; - /** - * The size of the checksum in bytes. - */ - public const SIZE = 4; - private static $mapping = [self::IEEE => 'IEEE', self::CASTAGNOLI => 'Castagnoli', self::KOOPMAN => 'Koopman']; - private function __construct() - { - // Prevent instantiation. - } - /** - * Returns the best CRC implementation available on this machine. - * - * @param integer $polynomial The CRC polynomial. Use a 32-bit number, - * or one of the supplied constants, CRC32::IEEE, - * CRC32::CASTAGNOLI, or CRC32::KOOPMAN. - * - * @return CRC32Interface - */ - public static function create($polynomial) - { - if (Google::supports($polynomial) && \function_exists('DeliciousBrains\\WP_Offload_Media\\Gcp\\crc32c')) { - return new Google(); - } - if (Builtin::supports($polynomial)) { - return new Builtin($polynomial); - } - // Fallback to the pure PHP version - return new PHP($polynomial); - } - /** - * Prints the human friendly name for this polynomial. - * - * @param integer $polynomial The CRC polynomial. - * - * @return string - */ - public static function string($polynomial) - { - if (isset(self::$mapping[$polynomial])) { - return self::$mapping[$polynomial]; - } - return '0x' . self::int2hex($polynomial); - } -} diff --git a/vendor/Gcp/google/crc32/src/CRCInterface.php b/vendor/Gcp/google/crc32/src/CRCInterface.php deleted file mode 100644 index efe18800..00000000 --- a/vendor/Gcp/google/crc32/src/CRCInterface.php +++ /dev/null @@ -1,56 +0,0 @@ -reset(); - } - public function reset() - { - $this->crc = \hex2bin('00000000'); - } - public function update($data) - { - $this->crc = crc32c($data, $this->crc); - } - public function hash($raw_output = \false) - { - if ($raw_output === \true) { - return $this->crc; - } - return \bin2hex($this->crc); - } - public function version() - { - return 'Hardware accelerated (https://github.com/google/crc32c)'; - } -} diff --git a/vendor/Gcp/google/crc32/src/PHP.php b/vendor/Gcp/google/crc32/src/PHP.php deleted file mode 100644 index 7dc5f18d..00000000 --- a/vendor/Gcp/google/crc32/src/PHP.php +++ /dev/null @@ -1,71 +0,0 @@ -polynomial = $polynomial; - $this->table = Table::get($polynomial); - $this->reset(); - } - public function reset() - { - $this->crc = ~0; - } - public function update($data) - { - $crc = $this->crc; - $table = $this->table; - $len = \strlen($data); - for ($i = 0; $i < $len; ++$i) { - $crc = $crc >> 8 & 0xffffff ^ $table[($crc ^ \ord($data[$i])) & 0xff]; - } - $this->crc = $crc; - } - public function hash($raw_output = \false) - { - return $this->crcHash(~$this->crc, $raw_output); - } - public function version() - { - return 'crc32(' . $this->int2hex($this->polynomial) . ') software version'; - } -} diff --git a/vendor/Gcp/google/crc32/src/PHPSlicedBy4.php b/vendor/Gcp/google/crc32/src/PHPSlicedBy4.php deleted file mode 100644 index 0dc20d9f..00000000 --- a/vendor/Gcp/google/crc32/src/PHPSlicedBy4.php +++ /dev/null @@ -1,89 +0,0 @@ -polynomial = $polynomial; - $this->table = Table::create4($polynomial); - $this->reset(); - } - public function reset() - { - $this->crc = ~0; - } - public function update($data) - { - $crc = $this->crc; - $table0 = $this->table[0]; - $table1 = $this->table[1]; - $table2 = $this->table[2]; - $table3 = $this->table[3]; - $len = \strlen($data); - $remain = $len % 4; - $len1 = $len - $remain; - for ($i = 0; $i < $len1; $i += 4) { - $b = \ord($data[$i + 3]) << 24 | \ord($data[$i + 2]) << 16 | \ord($data[$i + 1]) << 8 | \ord($data[$i]); - $crc = ($crc ^ $b) & 0xffffffff; - $crc = $table3[$crc & 0xff] ^ $table2[$crc >> 8 & 0xff] ^ $table1[$crc >> 16 & 0xff] ^ $table0[$crc >> 24 & 0xff]; - } - switch ($remain) { - case 3: - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i])) & 0xff]; - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i + 1])) & 0xff]; - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i + 2])) & 0xff]; - break; - case 2: - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i])) & 0xff]; - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i + 1])) & 0xff]; - break; - case 1: - $crc = $crc >> 8 & 0xffffff ^ $table0[($crc ^ \ord($data[$i])) & 0xff]; - break; - case 0: - } - $this->crc = $crc; - } - public function hash($raw_output = \false) - { - return $this->crcHash(~$this->crc, $raw_output); - } - public function version() - { - return 'crc32(' . $this->int2hex($this->polynomial) . ') software version'; - } -} diff --git a/vendor/Gcp/google/crc32/src/Table.php b/vendor/Gcp/google/crc32/src/Table.php deleted file mode 100644 index ca0c7b54..00000000 --- a/vendor/Gcp/google/crc32/src/Table.php +++ /dev/null @@ -1,104 +0,0 @@ - $value) { - echo "0x" . int2hex($value) . ","; - if ($i % 4 == 3) { - echo "\n"; - } else { - echo " "; - } - } - echo "\n\n"; - } - /** - * Gets a CRC table, by creating it, or using a previously cached result. - * - * @param integer $polynomial The polynomial - * - * @return array The table - */ - public static function get($polynomial) - { - if (isset(self::$tables[$polynomial])) { - return self::$tables[$polynomial]; - } - self::$tables[$polynomial] = self::create($polynomial); - return self::$tables[$polynomial]; - } - /** - * Create a CRC table. - * - * @param integer $polynomial The polynomial. - * - * @return array The table. - */ - public static function create($polynomial) - { - $table = \array_fill(0, 256, 0); - for ($i = 0; $i < 256; $i++) { - $crc = $i; - for ($j = 0; $j < 8; $j++) { - if ($crc & 1 == 1) { - $crc = $crc >> 1 ^ $polynomial; - } else { - $crc >>= 1; - } - } - $table[$i] = $crc; - } - return $table; - } - /** - * Create a CRC table sliced by 4. - * - * @param integer $polynomial The polynomial. - * - * @return array The table. - */ - public static function create4($polynomial) - { - $table = \array_fill(0, 4, \array_fill(0, 256, 0)); - $table[0] = self::create($polynomial); - for ($i = 0; $i < 256; $i++) { - // for Slicing-by-4 and Slicing-by-8 - $table[1][$i] = $table[0][$i] >> 8 ^ $table[0][$table[0][$i] & 0xff]; - $table[2][$i] = $table[1][$i] >> 8 ^ $table[0][$table[1][$i] & 0xff]; - $table[3][$i] = $table[2][$i] >> 8 ^ $table[0][$table[2][$i] & 0xff]; - /* - // only Slicing-by-8 - $table[4][$i] = ($table[3][$i] >> 8) ^ $table[0][$table[3][$i] & 0xFF]; - $table[5][$i] = ($table[4][$i] >> 8) ^ $table[0][$table[4][$i] & 0xFF]; - $table[6][$i] = ($table[5][$i] >> 8) ^ $table[0][$table[5][$i] & 0xFF]; - $table[7][$i] = ($table[6][$i] >> 8) ^ $table[0][$table[6][$i] & 0xFF]; - */ - } - return $table; - } -} diff --git a/vendor/Gcp/google/gax/CHANGELOG.md b/vendor/Gcp/google/gax/CHANGELOG.md new file mode 100644 index 00000000..c2785ba2 --- /dev/null +++ b/vendor/Gcp/google/gax/CHANGELOG.md @@ -0,0 +1,261 @@ +# Changelog + +## [1.29.1](https://github.com/googleapis/gax-php/compare/v1.29.0...v1.29.1) (2024-02-26) + + +### Bug Fixes + +* Allow InsecureCredentialsWrapper::getAuthorizationHeaderCallback to return null ([#541](https://github.com/googleapis/gax-php/issues/541)) ([676f4f7](https://github.com/googleapis/gax-php/commit/676f4f7e3d8925d8aba00285616fdf89440b45f9)) + +## [1.29.0](https://github.com/googleapis/gax-php/compare/v1.28.1...v1.29.0) (2024-02-26) + + +### Features + +* Add InsecureCredentialsWrapper for Emulator connection ([#538](https://github.com/googleapis/gax-php/issues/538)) ([b5dbeaf](https://github.com/googleapis/gax-php/commit/b5dbeaf33594b300a0c678ffc6a6946b09fce7dd)) + +## [1.28.1](https://github.com/googleapis/gax-php/compare/v1.28.0...v1.28.1) (2024-02-20) + + +### Bug Fixes + +* Universe domain check for grpc transport ([#534](https://github.com/googleapis/gax-php/issues/534)) ([1026d8a](https://github.com/googleapis/gax-php/commit/1026d8aec73e0aad8949a86ee7575e3edb3d56be)) + +## [1.28.0](https://github.com/googleapis/gax-php/compare/v1.27.2...v1.28.0) (2024-02-15) + + +### Features + +* Allow setting of universe domain in environment variable ([#520](https://github.com/googleapis/gax-php/issues/520)) ([6e6603b](https://github.com/googleapis/gax-php/commit/6e6603b03285f3f8d1072776cd206720e3990f50)) + +## [1.27.2](https://github.com/googleapis/gax-php/compare/v1.27.1...v1.27.2) (2024-02-14) + + +### Bug Fixes + +* Typo in TransportOptions option name ([#530](https://github.com/googleapis/gax-php/issues/530)) ([6914fe0](https://github.com/googleapis/gax-php/commit/6914fe04554867bd827be6596fafc751a3d7621a)) + +## [1.27.1](https://github.com/googleapis/gax-php/compare/v1.27.0...v1.27.1) (2024-02-14) + + +### Bug Fixes + +* Issues in Options classes ([#528](https://github.com/googleapis/gax-php/issues/528)) ([aa9ba3a](https://github.com/googleapis/gax-php/commit/aa9ba3a6bac9324ad894d9677da0e897497ebab2)) + +## [1.27.0](https://github.com/googleapis/gax-php/compare/v1.26.3...v1.27.0) (2024-02-07) + + +### Features + +* Create ClientOptionsTrait ([#527](https://github.com/googleapis/gax-php/issues/527)) ([cfe2c60](https://github.com/googleapis/gax-php/commit/cfe2c60a36233f74259c96a6799d8492ed7c45d0)) +* Implement ProjectIdProviderInterface in CredentialsWrapper ([#523](https://github.com/googleapis/gax-php/issues/523)) ([b56a463](https://github.com/googleapis/gax-php/commit/b56a4635abfeeec08895202da8218e9ba915413e)) +* Update ArrayTrait to be consistent with Core ([#526](https://github.com/googleapis/gax-php/issues/526)) ([8e44185](https://github.com/googleapis/gax-php/commit/8e44185dd6f8f8f9ef5b136776cba61ec7a8b8f6)) + + +### Bug Fixes + +* Correct exception type for Guzzle promise ([#521](https://github.com/googleapis/gax-php/issues/521)) ([7129373](https://github.com/googleapis/gax-php/commit/712937339c134e1d92cab5fa736cfe1bbcd7f343)) + +## [1.26.3](https://github.com/googleapis/gax-php/compare/v1.26.2...v1.26.3) (2024-01-18) + + +### Bug Fixes + +* CallOptions should use transportOptions ([#513](https://github.com/googleapis/gax-php/issues/513)) ([2d45ee1](https://github.com/googleapis/gax-php/commit/2d45ee187cdc3619b30c51b653b508718baf3af4)) + +## [1.26.2](https://github.com/googleapis/gax-php/compare/v1.26.1...v1.26.2) (2024-01-09) + + +### Bug Fixes + +* Ensure modifyClientOptions is called for new surface clients ([#515](https://github.com/googleapis/gax-php/issues/515)) ([68231b8](https://github.com/googleapis/gax-php/commit/68231b896dec8efb86f8986aefba3d247d2a2d1c)) + +## [1.26.1](https://github.com/googleapis/gax-php/compare/v1.26.0...v1.26.1) (2024-01-04) + + +### Bug Fixes + +* Widen google/longrunning version ([#511](https://github.com/googleapis/gax-php/issues/511)) ([b93096d](https://github.com/googleapis/gax-php/commit/b93096d0e10bde14c50480ea9f0423c292fbd5a6)) + +## [1.26.0](https://github.com/googleapis/gax-php/compare/v1.25.0...v1.26.0) (2024-01-03) + + +### Features + +* Add support for universe domain ([#502](https://github.com/googleapis/gax-php/issues/502)) ([5a26fac](https://github.com/googleapis/gax-php/commit/5a26facad5c2e5c30945987c422bb78a3fffb9b1)) +* Interface and methods for middleware stack ([#473](https://github.com/googleapis/gax-php/issues/473)) ([766da7b](https://github.com/googleapis/gax-php/commit/766da7b369409ec1b29376b533e7f22ee7f745f4)) + + +### Bug Fixes + +* Accept throwable for retry settings ([#509](https://github.com/googleapis/gax-php/issues/509)) ([5af9c3c](https://github.com/googleapis/gax-php/commit/5af9c3c650419c8f1a590783e954cd11dc1f0d56)) + +## [1.25.0](https://github.com/googleapis/gax-php/compare/v1.24.0...v1.25.0) (2023-11-02) + + +### Features + +* Add custom retries ([#489](https://github.com/googleapis/gax-php/issues/489)) ([ef0789b](https://github.com/googleapis/gax-php/commit/ef0789b73ef28d79a08c354d1361a9ccc6206088)) + +## [1.24.0](https://github.com/googleapis/gax-php/compare/v1.23.0...v1.24.0) (2023-10-10) + + +### Features + +* Ensure NewClientSurface works for consoldiated v2 clients ([#493](https://github.com/googleapis/gax-php/issues/493)) ([cb8706e](https://github.com/googleapis/gax-php/commit/cb8706ef9211a1e43f733d2c8f272a330c2fa792)) + +## [1.23.0](https://github.com/googleapis/gax-php/compare/v1.22.1...v1.23.0) (2023-09-14) + + +### Features + +* Typesafety for new surface client options ([#450](https://github.com/googleapis/gax-php/issues/450)) ([21550c5](https://github.com/googleapis/gax-php/commit/21550c5bf07f178f2043b0630f3ac34fcc3a05e0)) + +## [1.22.1](https://github.com/googleapis/gax-php/compare/v1.22.0...v1.22.1) (2023-08-04) + + +### Bug Fixes + +* Deprecation notice while GapicClientTrait->setClientOptions ([#483](https://github.com/googleapis/gax-php/issues/483)) ([1c66d34](https://github.com/googleapis/gax-php/commit/1c66d3445dca4d43831a2f4e26e59b9bd1cb76dd)) + +## [1.22.0](https://github.com/googleapis/gax-php/compare/v1.21.1...v1.22.0) (2023-07-31) + + +### Features + +* Sets api headers for "gcloud-php-new" and "gcloud-php-legacy" surface versions ([#470](https://github.com/googleapis/gax-php/issues/470)) ([2d8ccff](https://github.com/googleapis/gax-php/commit/2d8ccff419a076ee2fe9d3dc7ecd5509c74afb4c)) + +## [1.21.1](https://github.com/googleapis/gax-php/compare/v1.21.0...v1.21.1) (2023-06-28) + + +### Bug Fixes + +* Revert "chore: remove unnecessary api endpoint check" ([#476](https://github.com/googleapis/gax-php/issues/476)) ([13e773f](https://github.com/googleapis/gax-php/commit/13e773f5b09f9a99b8425835815746d37e9c1da3)) + +## [1.21.0](https://github.com/googleapis/gax-php/compare/v1.20.2...v1.21.0) (2023-06-09) + + +### Features + +* Support guzzle/promises:v2 ([753eae9](https://github.com/googleapis/gax-php/commit/753eae9acf638f3356f8149acf84444eb399a699)) + +## [1.20.2](https://github.com/googleapis/gax-php/compare/v1.20.1...v1.20.2) (2023-05-12) + + +### Bug Fixes + +* Ensure timeout set by RetryMiddleware is int not float ([#462](https://github.com/googleapis/gax-php/issues/462)) ([9d4c7fa](https://github.com/googleapis/gax-php/commit/9d4c7fa89445c63ec0bf4745ed9d98fd185ef51f)) + +## [1.20.1](https://github.com/googleapis/gax-php/compare/v1.20.0...v1.20.1) (2023-05-12) + + +### Bug Fixes + +* Default value for error message in createFromRequestException ([#463](https://github.com/googleapis/gax-php/issues/463)) ([7552d22](https://github.com/googleapis/gax-php/commit/7552d22241c2f488606e9546efdd6edea356ee9a)) + +## [1.20.0](https://github.com/googleapis/gax-php/compare/v1.19.1...v1.20.0) (2023-05-01) + + +### Features + +* **deps:** Support google/common-protos 4.0 ([af1db80](https://github.com/googleapis/gax-php/commit/af1db80c22307597f0dfcb9fafa86caf466588ba)) +* **deps:** Support google/grpc-gcp 0.3 ([18edc2c](https://github.com/googleapis/gax-php/commit/18edc2ce6a1a615e3ea7c00ede313c32cec4b799)) + +## [1.19.1](https://github.com/googleapis/gax-php/compare/v1.19.0...v1.19.1) (2023-03-16) + + +### Bug Fixes + +* Simplify ResourceHelperTrait registration ([#447](https://github.com/googleapis/gax-php/issues/447)) ([4949dc0](https://github.com/googleapis/gax-php/commit/4949dc0c4cd5e58af7933a1d2ecab90832c0b036)) + +## [1.19.0](https://github.com/googleapis/gax-php/compare/v1.18.2...v1.19.0) (2023-01-27) + + +### Features + +* Ensure cache is used in calls to ADC::onGCE ([#441](https://github.com/googleapis/gax-php/issues/441)) ([64a4184](https://github.com/googleapis/gax-php/commit/64a4184ab69d13104d269b15a55d4b8b2515b5a6)) + +## [1.18.2](https://github.com/googleapis/gax-php/compare/v1.18.1...v1.18.2) (2023-01-06) + + +### Bug Fixes + +* Ensure metadata return type is loaded into descriptor pool ([#439](https://github.com/googleapis/gax-php/issues/439)) ([a40cf8d](https://github.com/googleapis/gax-php/commit/a40cf8d87ac9aa45d18239456e2e4c96653f1a6c)) +* Implicit conversion from float to int warning ([#438](https://github.com/googleapis/gax-php/issues/438)) ([1cb62ad](https://github.com/googleapis/gax-php/commit/1cb62ad3d92ace0518017abc972e912b339f1b56)) + +## [1.18.1](https://github.com/googleapis/gax-php/compare/v1.18.0...v1.18.1) (2022-12-06) + + +### Bug Fixes + +* Message parameters in required querystring ([#430](https://github.com/googleapis/gax-php/issues/430)) ([77bc5e1](https://github.com/googleapis/gax-php/commit/77bc5e1cb8f347601d9237bf5164cf8b8ad8aa0f)) + +## [1.18.0](https://github.com/googleapis/gax-php/compare/v1.17.0...v1.18.0) (2022-12-05) + + +### Features + +* Add ResourceHelperTrait ([#428](https://github.com/googleapis/gax-php/issues/428)) ([0439efa](https://github.com/googleapis/gax-php/commit/0439efa926865be5fea25b699469b0c1f8c1c768)) + +## [1.17.0](https://github.com/googleapis/gax-php/compare/v1.16.4...v1.17.0) (2022-09-08) + + +### Features + +* Add startAsyncCall support ([#418](https://github.com/googleapis/gax-php/issues/418)) ([fc90693](https://github.com/googleapis/gax-php/commit/fc9069373c329183e07f8d174084c305b2308209)) + +## [1.16.4](https://github.com/googleapis/gax-php/compare/v1.16.3...v1.16.4) (2022-08-25) + + +### Bug Fixes + +* use interfaceOverride instead of param ([#419](https://github.com/googleapis/gax-php/issues/419)) ([9dd5bc9](https://github.com/googleapis/gax-php/commit/9dd5bc91c4becfd2a0832288ab2406c3d224618e)) + +## [1.16.3](https://github.com/googleapis/gax-php/compare/v1.16.2...v1.16.3) (2022-08-23) + + +### Bug Fixes + +* add eager threshold ([#416](https://github.com/googleapis/gax-php/issues/416)) ([99eb172](https://github.com/googleapis/gax-php/commit/99eb172280f301b117fde9dcc92079ca03aa28bd)) + +## [1.16.2](https://github.com/googleapis/gax-php/compare/v1.16.1...v1.16.2) (2022-08-16) + + +### Bug Fixes + +* use responseType for custom operations ([#413](https://github.com/googleapis/gax-php/issues/413)) ([b643adf](https://github.com/googleapis/gax-php/commit/b643adfc44dd9fe82b0919e5b34edd00c7cdbb1f)) + +## [1.16.1](https://github.com/googleapis/gax-php/compare/v1.16.0...v1.16.1) (2022-08-11) + + +### Bug Fixes + +* remove typehint from extended method ([#411](https://github.com/googleapis/gax-php/issues/411)) ([fb37f73](https://github.com/googleapis/gax-php/commit/fb37f7365e888465d84fca304ca83360ddbae6c3)) + +## [1.16.0](https://github.com/googleapis/gax-php/compare/v1.15.0...v1.16.0) (2022-08-10) + + +### Features + +* additional typehinting ([#403](https://github.com/googleapis/gax-php/issues/403)) ([6597a07](https://github.com/googleapis/gax-php/commit/6597a07019665d91e07ea0a016c7d99c8a099cd2)) +* drop support for PHP 5.6 ([#397](https://github.com/googleapis/gax-php/issues/397)) ([b888b24](https://github.com/googleapis/gax-php/commit/b888b24e0e223784e22dbbbe27fe0284cdcdfc35)) +* introduce startApiCall ([#406](https://github.com/googleapis/gax-php/issues/406)) ([1cfeb62](https://github.com/googleapis/gax-php/commit/1cfeb628070c9c6e57b2dde854b0a973a888a2bc)) + + +### Bug Fixes + +* **deps:** update dependency google/longrunning to ^0.2 ([#407](https://github.com/googleapis/gax-php/issues/407)) ([54d4f32](https://github.com/googleapis/gax-php/commit/54d4f32ba5464d1f5da33e1c99a020174cae367c)) + +## [1.15.0](https://github.com/googleapis/gax-php/compare/v1.14.0...v1.15.0) (2022-08-02) + + +### Features + +* move LongRunning classes to a standalone package ([#401](https://github.com/googleapis/gax-php/issues/401)) ([1747125](https://github.com/googleapis/gax-php/commit/1747125c84dcc6d42390de7e78d2e326884e1073)) + +## [1.14.0](https://github.com/googleapis/gax-php/compare/v1.13.0...v1.14.0) (2022-07-26) + + +### Features + +* support requesting numeric enum rest encoding ([#395](https://github.com/googleapis/gax-php/issues/395)) ([0d74a48](https://github.com/googleapis/gax-php/commit/0d74a4877c5198cfaf534c4e55d7e418b50bc6ab)) diff --git a/vendor/Gcp/google/gax/CODE_OF_CONDUCT.md b/vendor/Gcp/google/gax/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..46b2a08e --- /dev/null +++ b/vendor/Gcp/google/gax/CODE_OF_CONDUCT.md @@ -0,0 +1,43 @@ +# Contributor Code of Conduct + +As contributors and maintainers of this project, +and in the interest of fostering an open and welcoming community, +we pledge to respect all people who contribute through reporting issues, +posting feature requests, updating documentation, +submitting pull requests or patches, and other activities. + +We are committed to making participation in this project +a harassment-free experience for everyone, +regardless of level of experience, gender, gender identity and expression, +sexual orientation, disability, personal appearance, +body size, race, ethnicity, age, religion, or nationality. + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery +* Personal attacks +* Trolling or insulting/derogatory comments +* Public or private harassment +* Publishing other's private information, +such as physical or electronic +addresses, without explicit permission +* Other unethical or unprofessional conduct. + +Project maintainers have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct. +By adopting this Code of Conduct, +project maintainers commit themselves to fairly and consistently +applying these principles to every aspect of managing this project. +Project maintainers who do not follow or enforce the Code of Conduct +may be permanently removed from the project team. + +This code of conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. + +Instances of abusive, harassing, or otherwise unacceptable behavior +may be reported by opening an issue +or contacting one or more of the project maintainers. + +This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0, +available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/) diff --git a/vendor/Gcp/google/gax/LICENSE b/vendor/Gcp/google/gax/LICENSE new file mode 100644 index 00000000..1839ff93 --- /dev/null +++ b/vendor/Gcp/google/gax/LICENSE @@ -0,0 +1,25 @@ +Copyright 2016, Google Inc. +All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/vendor/Gcp/google/gax/README.md b/vendor/Gcp/google/gax/README.md new file mode 100644 index 00000000..6cba863e --- /dev/null +++ b/vendor/Gcp/google/gax/README.md @@ -0,0 +1,98 @@ +# Google API Core for PHP + +![Build Status](https://github.com/googleapis/gax-php/actions/workflows/tests.yml/badge.svg) + +- [Documentation](https://googleapis.github.io/gax-php) + +Google API Core for PHP (gax-php) is a set of modules which aids the development +of APIs for clients based on [gRPC][] and Google API conventions. + +Application code will rarely need to use most of the classes within this library +directly, but code generated automatically from the API definition files in +[Google APIs][] can use services such as page streaming and retry to provide a +more convenient and idiomatic API surface to callers. + +[gRPC]: http://grpc.io +[Google APIs]: https://github.com/googleapis/googleapis/ + +## PHP Versions + +gax-php currently requires PHP 5.6 or higher. + +## Contributing + +Contributions to this library are always welcome and highly encouraged. + +See the [CONTRIBUTING][] documentation for more information on how to get +started. + +[CONTRIBUTING]: https://github.com/googleapis/gax-php/blob/main/.github/CONTRIBUTING.md + +## Versioning + +This library follows [Semantic Versioning][]. + +This library is considered GA (generally available). As such, it will not +introduce backwards-incompatible changes in any minor or patch releases. We will +address issues and requests with the highest priority. + +[Semantic Versioning]: http://semver.org/ + +## Repository Structure + +All code lives under the src/ directory. Handwritten code lives in the +src/ApiCore directory and is contained in the `Google\ApiCore` namespace. + +Generated classes for protobuf common types and LongRunning client live under +the src/ directory, in the appropriate directory and namespace. + +Code in the metadata/ directory is provided to support generated protobuf +classes, and should not be used directly. + +## Development Set-Up + +These steps describe the dependencies to install for Linux, and equivalents can +be found for Mac or Windows. + +1. Install dependencies. + + ```sh + > cd ~/ + > sudo apt-get install php php-dev libcurl3-openssl-dev php-pear php-bcmath php-xml + > curl -sS https://getcomposer.org/installer | php + > sudo pecl install protobuf + ``` + +2. Set up this repo. + + ```sh + > cd /path/to/gax-php + > cp ~/composer.phar ./ + > php composer.phar install + ``` + +3. Run tests. + + ```sh + > vendor/bin/phpunit --bootstrap tests/bootstrap.php tests + ``` + +4. Updating dependencies after changing `composer.json`: + + ```sh + > php composer.phar update + ` + ``` + +5. Formatting source: + + ```sh + > vendor/bin/phpcbf -s --standard=./ruleset.xml + > vendor/bin/phpcs -s --standard=./ruleset.xml + ``` + +## License + +BSD - See [LICENSE][] for more information. + +[LICENSE]: https://github.com/googleapis/gax-php/blob/main/LICENSE diff --git a/vendor/Gcp/google/gax/SECURITY.md b/vendor/Gcp/google/gax/SECURITY.md new file mode 100644 index 00000000..8b58ae9c --- /dev/null +++ b/vendor/Gcp/google/gax/SECURITY.md @@ -0,0 +1,7 @@ +# Security Policy + +To report a security issue, please use [g.co/vulnz](https://g.co/vulnz). + +The Google Security Team will respond within 5 working days of your report on g.co/vulnz. + +We use g.co/vulnz for our intake, and do coordination and disclosure here using GitHub Security Advisory to privately discuss and fix the issue. diff --git a/vendor/Gcp/google/gax/VERSION b/vendor/Gcp/google/gax/VERSION new file mode 100644 index 00000000..83cf0d95 --- /dev/null +++ b/vendor/Gcp/google/gax/VERSION @@ -0,0 +1 @@ +1.29.1 diff --git a/vendor/Gcp/google/gax/composer.json b/vendor/Gcp/google/gax/composer.json new file mode 100644 index 00000000..88737acd --- /dev/null +++ b/vendor/Gcp/google/gax/composer.json @@ -0,0 +1,45 @@ +{ + "name": "google\/gax", + "type": "library", + "description": "Google API Core for PHP", + "keywords": [ + "google" + ], + "homepage": "https:\/\/github.com\/googleapis\/gax-php", + "license": "BSD-3-Clause", + "require": { + "php": ">=7.4", + "google\/auth": "^1.34.0", + "google\/grpc-gcp": "^0.2||^0.3", + "grpc\/grpc": "^1.13", + "google\/protobuf": "^3.22", + "guzzlehttp\/promises": "^1.4||^2.0", + "guzzlehttp\/psr7": "^2.0", + "google\/common-protos": "^4.4", + "google\/longrunning": "~0.2" + }, + "require-dev": { + "phpunit\/phpunit": "^9.0", + "squizlabs\/php_codesniffer": "3.*", + "phpspec\/prophecy-phpunit": "^2.0" + }, + "conflict": { + "ext-protobuf": "<3.7.0" + }, + "autoload": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\": "src", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\ApiCore\\": "metadata\/ApiCore" + } + }, + "autoload-dev": { + "psr-4": { + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\Dev\\": "dev\/src", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\Google\\ApiCore\\": "tests", + "DeliciousBrains\\WP_Offload_Media\\Gcp\\GPBMetadata\\Google\\": "metadata\/Google" + } + }, + "scripts": { + "regenerate-test-protos": "dev\/sh\/regenerate-test-protos.sh" + } +} \ No newline at end of file diff --git a/vendor/Gcp/google/gax/metadata/README.md b/vendor/Gcp/google/gax/metadata/README.md new file mode 100644 index 00000000..1bd41550 --- /dev/null +++ b/vendor/Gcp/google/gax/metadata/README.md @@ -0,0 +1,6 @@ +# Google Protobuf Metadata Classes + +## WARNING! + +These classes are not intended for direct use - they exist only to support +the generated protobuf classes in src/ diff --git a/vendor/Gcp/google/gax/phpstan.neon.dist b/vendor/Gcp/google/gax/phpstan.neon.dist new file mode 100644 index 00000000..dcef1134 --- /dev/null +++ b/vendor/Gcp/google/gax/phpstan.neon.dist @@ -0,0 +1,5 @@ +parameters: + treatPhpDocTypesAsCertain: false + level: 5 + paths: + - src diff --git a/vendor/Gcp/google/gax/phpunit.xml.dist b/vendor/Gcp/google/gax/phpunit.xml.dist new file mode 100644 index 00000000..eea41f5b --- /dev/null +++ b/vendor/Gcp/google/gax/phpunit.xml.dist @@ -0,0 +1,13 @@ + + + + + src/ApiCore + + + + + tests/Tests/Unit + + + diff --git a/vendor/Gcp/google/gax/renovate.json b/vendor/Gcp/google/gax/renovate.json new file mode 100644 index 00000000..6d812132 --- /dev/null +++ b/vendor/Gcp/google/gax/renovate.json @@ -0,0 +1,7 @@ +{ + "extends": [ + "config:base", + ":preserveSemverRanges", + ":disableDependencyDashboard" + ] +} diff --git a/vendor/Gcp/google/gax/src/AgentHeader.php b/vendor/Gcp/google/gax/src/AgentHeader.php new file mode 100644 index 00000000..f5c4c986 --- /dev/null +++ b/vendor/Gcp/google/gax/src/AgentHeader.php @@ -0,0 +1,116 @@ + $value) { + $metricsList[] = $key . "/" . $value; + } + return [self::AGENT_HEADER_KEY => [\implode(" ", $metricsList)]]; + } + /** + * Reads the gapic version string from a VERSION file. In order to determine the file + * location, this method follows this procedure: + * - accepts a class name $callingClass + * - identifies the file defining that class + * - searches up the directory structure for the 'src' directory + * - looks in the directory above 'src' for a file named VERSION + * + * @param string $callingClass + * @return string the gapic version + * @throws \ReflectionException + */ + public static function readGapicVersionFromFile(string $callingClass) + { + $callingClassFile = (new \ReflectionClass($callingClass))->getFileName(); + $versionFile = \substr($callingClassFile, 0, \strrpos($callingClassFile, \DIRECTORY_SEPARATOR . 'src' . \DIRECTORY_SEPARATOR)) . \DIRECTORY_SEPARATOR . 'VERSION'; + return Version::readVersionFile($versionFile); + } +} diff --git a/vendor/Gcp/google/gax/src/ApiException.php b/vendor/Gcp/google/gax/src/ApiException.php new file mode 100644 index 00000000..05d93ead --- /dev/null +++ b/vendor/Gcp/google/gax/src/ApiException.php @@ -0,0 +1,267 @@ + null, 'metadata' => null, 'basicMessage' => $message]; + parent::__construct($message, $code, $optionalArgs['previous']); + $this->status = $status; + $this->metadata = $optionalArgs['metadata']; + $this->basicMessage = $optionalArgs['basicMessage']; + if ($this->metadata) { + $this->decodedMetadataErrorInfo = self::decodeMetadataErrorInfo($this->metadata); + } + } + public function getStatus() + { + return $this->status; + } + /** + * Returns null if metadata does not contain error info, or returns containsErrorInfo() array + * if the metadata does contain error info. + * @param array $metadata + * @return array $details { + * @type string|null $reason + * @type string|null $domain + * @type array|null $errorInfoMetadata + * } + */ + private static function decodeMetadataErrorInfo(array $metadata) + { + $details = []; + // ApiExceptions created from RPC status have metadata that is an array of objects. + if (\is_object(\reset($metadata))) { + $metadataRpcStatus = Serializer::decodeAnyMessages($metadata); + $details = self::containsErrorInfo($metadataRpcStatus); + } elseif (self::containsErrorInfo($metadata)) { + $details = self::containsErrorInfo($metadata); + } else { + // For GRPC-based responses, the $metadata needs to be decoded. + $metadataGrpc = Serializer::decodeMetadata($metadata); + $details = self::containsErrorInfo($metadataGrpc); + } + return $details; + } + /** + * Returns the `reason` in ErrorInfo for an exception, or null if there is no ErrorInfo. + * @return string|null $reason + */ + public function getReason() + { + return $this->decodedMetadataErrorInfo ? $this->decodedMetadataErrorInfo['reason'] : null; + } + /** + * Returns the `domain` in ErrorInfo for an exception, or null if there is no ErrorInfo. + * @return string|null $domain + */ + public function getDomain() + { + return $this->decodedMetadataErrorInfo ? $this->decodedMetadataErrorInfo['domain'] : null; + } + /** + * Returns the `metadata` in ErrorInfo for an exception, or null if there is no ErrorInfo. + * @return array|null $errorInfoMetadata + */ + public function getErrorInfoMetadata() + { + return $this->decodedMetadataErrorInfo ? $this->decodedMetadataErrorInfo['errorInfoMetadata'] : null; + } + /** + * @param stdClass $status + * @return ApiException + */ + public static function createFromStdClass(stdClass $status) + { + $metadata = \property_exists($status, 'metadata') ? $status->metadata : null; + return self::create($status->details, $status->code, $metadata, Serializer::decodeMetadata((array) $metadata)); + } + /** + * @param string $basicMessage + * @param int $rpcCode + * @param array|null $metadata + * @param Exception $previous + * @return ApiException + */ + public static function createFromApiResponse($basicMessage, $rpcCode, array $metadata = null, Exception $previous = null) + { + return self::create($basicMessage, $rpcCode, $metadata, Serializer::decodeMetadata((array) $metadata), $previous); + } + /** + * For REST-based responses, the metadata does not need to be decoded. + * + * @param string $basicMessage + * @param int $rpcCode + * @param array|null $metadata + * @param Exception $previous + * @return ApiException + */ + public static function createFromRestApiResponse($basicMessage, $rpcCode, array $metadata = null, Exception $previous = null) + { + return self::create($basicMessage, $rpcCode, $metadata, \is_null($metadata) ? [] : $metadata, $previous); + } + /** + * Checks if decoded metadata includes errorInfo message. + * If errorInfo is set, it will always contain `reason`, `domain`, and `metadata` keys. + * @param array $decodedMetadata + * @return array { + * @type string $reason + * @type string $domain + * @type array $errorInfoMetadata + * } + */ + private static function containsErrorInfo(array $decodedMetadata) + { + if (empty($decodedMetadata)) { + return []; + } + foreach ($decodedMetadata as $value) { + $isErrorInfoArray = isset($value['reason']) && isset($value['domain']) && isset($value['metadata']); + if ($isErrorInfoArray) { + return ['reason' => $value['reason'], 'domain' => $value['domain'], 'errorInfoMetadata' => $value['metadata']]; + } + } + return []; + } + /** + * Construct an ApiException with a useful message, including decoded metadata. + * If the decoded metadata includes an errorInfo message, then the domain, reason, + * and metadata fields from that message are hoisted directly into the error. + * + * @param string $basicMessage + * @param int $rpcCode + * @param iterable|null $metadata + * @param array $decodedMetadata + * @param Exception|null $previous + * @return ApiException + */ + private static function create(string $basicMessage, int $rpcCode, $metadata, array $decodedMetadata, Exception $previous = null) + { + $containsErrorInfo = self::containsErrorInfo($decodedMetadata); + $rpcStatus = ApiStatus::statusFromRpcCode($rpcCode); + $messageData = ['message' => $basicMessage, 'code' => $rpcCode, 'status' => $rpcStatus, 'details' => $decodedMetadata]; + if ($containsErrorInfo) { + $messageData = \array_merge($containsErrorInfo, $messageData); + } + $message = \json_encode($messageData, \JSON_PRETTY_PRINT); + if ($metadata instanceof RepeatedField) { + $metadata = \iterator_to_array($metadata); + } + return new ApiException($message, $rpcCode, $rpcStatus, ['previous' => $previous, 'metadata' => $metadata, 'basicMessage' => $basicMessage]); + } + /** + * @param Status $status + * @return ApiException + */ + public static function createFromRpcStatus(Status $status) + { + return self::create($status->getMessage(), $status->getCode(), $status->getDetails(), Serializer::decodeAnyMessages($status->getDetails())); + } + /** + * Creates an ApiException from a GuzzleHttp RequestException. + * + * @param RequestException $ex + * @param boolean $isStream + * @return ApiException + * @throws ValidationException + */ + public static function createFromRequestException(RequestException $ex, bool $isStream = \false) + { + $res = $ex->getResponse(); + $body = (string) $res->getBody(); + $decoded = \json_decode($body, \true); + // A streaming response body will return one error in an array. Parse + // that first (and only) error message, if provided. + if ($isStream && isset($decoded[0])) { + $decoded = $decoded[0]; + } + if (isset($decoded['error']) && $decoded['error']) { + $error = $decoded['error']; + $basicMessage = $error['message'] ?? ''; + $code = isset($error['status']) ? ApiStatus::rpcCodeFromStatus($error['status']) : $ex->getCode(); + $metadata = $error['details'] ?? null; + return static::createFromRestApiResponse($basicMessage, $code, $metadata); + } + // Use the RPC code instead of the HTTP Status Code. + $code = ApiStatus::rpcCodeFromHttpStatusCode($res->getStatusCode()); + return static::createFromApiResponse($body, $code); + } + /** + * @return null|string + */ + public function getBasicMessage() + { + return $this->basicMessage; + } + /** + * @return mixed[] + */ + public function getMetadata() + { + return $this->metadata; + } + /** + * String representation of ApiException + * @return string + */ + public function __toString() + { + return __CLASS__ . ": {$this->message}\n"; + } +} diff --git a/vendor/Gcp/google/gax/src/ApiStatus.php b/vendor/Gcp/google/gax/src/ApiStatus.php new file mode 100644 index 00000000..12cac71f --- /dev/null +++ b/vendor/Gcp/google/gax/src/ApiStatus.php @@ -0,0 +1,117 @@ + Code::OK, ApiStatus::CANCELLED => Code::CANCELLED, ApiStatus::UNKNOWN => Code::UNKNOWN, ApiStatus::INVALID_ARGUMENT => Code::INVALID_ARGUMENT, ApiStatus::DEADLINE_EXCEEDED => Code::DEADLINE_EXCEEDED, ApiStatus::NOT_FOUND => Code::NOT_FOUND, ApiStatus::ALREADY_EXISTS => Code::ALREADY_EXISTS, ApiStatus::PERMISSION_DENIED => Code::PERMISSION_DENIED, ApiStatus::RESOURCE_EXHAUSTED => Code::RESOURCE_EXHAUSTED, ApiStatus::FAILED_PRECONDITION => Code::FAILED_PRECONDITION, ApiStatus::ABORTED => Code::ABORTED, ApiStatus::OUT_OF_RANGE => Code::OUT_OF_RANGE, ApiStatus::UNIMPLEMENTED => Code::UNIMPLEMENTED, ApiStatus::INTERNAL => Code::INTERNAL, ApiStatus::UNAVAILABLE => Code::UNAVAILABLE, ApiStatus::DATA_LOSS => Code::DATA_LOSS, ApiStatus::UNAUTHENTICATED => Code::UNAUTHENTICATED]; + private static $codeToApiStatusMap = [Code::OK => ApiStatus::OK, Code::CANCELLED => ApiStatus::CANCELLED, Code::UNKNOWN => ApiStatus::UNKNOWN, Code::INVALID_ARGUMENT => ApiStatus::INVALID_ARGUMENT, Code::DEADLINE_EXCEEDED => ApiStatus::DEADLINE_EXCEEDED, Code::NOT_FOUND => ApiStatus::NOT_FOUND, Code::ALREADY_EXISTS => ApiStatus::ALREADY_EXISTS, Code::PERMISSION_DENIED => ApiStatus::PERMISSION_DENIED, Code::RESOURCE_EXHAUSTED => ApiStatus::RESOURCE_EXHAUSTED, Code::FAILED_PRECONDITION => ApiStatus::FAILED_PRECONDITION, Code::ABORTED => ApiStatus::ABORTED, Code::OUT_OF_RANGE => ApiStatus::OUT_OF_RANGE, Code::UNIMPLEMENTED => ApiStatus::UNIMPLEMENTED, Code::INTERNAL => ApiStatus::INTERNAL, Code::UNAVAILABLE => ApiStatus::UNAVAILABLE, Code::DATA_LOSS => ApiStatus::DATA_LOSS, Code::UNAUTHENTICATED => ApiStatus::UNAUTHENTICATED]; + private static $httpStatusCodeToRpcCodeMap = [400 => Code::INVALID_ARGUMENT, 401 => Code::UNAUTHENTICATED, 403 => Code::PERMISSION_DENIED, 404 => Code::NOT_FOUND, 409 => Code::ABORTED, 416 => Code::OUT_OF_RANGE, 429 => Code::RESOURCE_EXHAUSTED, 499 => Code::CANCELLED, 501 => Code::UNIMPLEMENTED, 503 => Code::UNAVAILABLE, 504 => Code::DEADLINE_EXCEEDED]; + /** + * @param string $status + * @return bool + */ + public static function isValidStatus(string $status) + { + return \array_key_exists($status, self::$apiStatusToCodeMap); + } + /** + * @param int $code + * @return string + */ + public static function statusFromRpcCode(int $code) + { + if (\array_key_exists($code, self::$codeToApiStatusMap)) { + return self::$codeToApiStatusMap[$code]; + } + return ApiStatus::UNRECOGNIZED_STATUS; + } + /** + * @param string $status + * @return int + */ + public static function rpcCodeFromStatus(string $status) + { + if (\array_key_exists($status, self::$apiStatusToCodeMap)) { + return self::$apiStatusToCodeMap[$status]; + } + return ApiStatus::UNRECOGNIZED_CODE; + } + /** + * Maps HTTP status codes to Google\Rpc\Code codes. + * Some codes are left out because they map to multiple gRPC codes (e.g. 500). + * + * @param int $httpStatusCode + * @return int + */ + public static function rpcCodeFromHttpStatusCode(int $httpStatusCode) + { + if (\array_key_exists($httpStatusCode, self::$httpStatusCodeToRpcCodeMap)) { + return self::$httpStatusCodeToRpcCodeMap[$httpStatusCode]; + } + // All 2xx + if ($httpStatusCode >= 200 && $httpStatusCode < 300) { + return Code::OK; + } + // All 4xx + if ($httpStatusCode >= 400 && $httpStatusCode < 500) { + return Code::FAILED_PRECONDITION; + } + // All 5xx + if ($httpStatusCode >= 500 && $httpStatusCode < 600) { + return Code::INTERNAL; + } + // Everything else (We cannot change this to Code::UNKNOWN because it would break BC) + return ApiStatus::UNRECOGNIZED_CODE; + } +} diff --git a/vendor/Gcp/google/gax/src/ArrayTrait.php b/vendor/Gcp/google/gax/src/ArrayTrait.php new file mode 100644 index 00000000..c790e511 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ArrayTrait.php @@ -0,0 +1,138 @@ +pluck($key, $arr, \false); + } + } + return $values; + } + /** + * Determine whether given array is associative. + * + * @param array $arr + * @return bool + */ + private function isAssoc(array $arr) + { + return \array_keys($arr) !== \range(0, \count($arr) - 1); + } + /** + * Just like array_filter(), but preserves falsey values except null. + * + * @param array $arr + * @return array + */ + private function arrayFilterRemoveNull(array $arr) + { + return \array_filter($arr, function ($element) { + if (!\is_null($element)) { + return \true; + } + return \false; + }); + } + /** + * Return a subset of an array, like pluckArray, without modifying the original array. + * + * @param array $keys + * @param array $arr + * @return array + */ + private function subsetArray(array $keys, array $arr) + { + return \array_intersect_key($arr, \array_flip($keys)); + } + /** + * A method, similar to PHP's `array_merge_recursive`, with two differences. + * + * 1. Keys in $array2 take precedence over keys in $array1. + * 2. Non-array keys found in both inputs are not transformed into an array + * and appended. Rather, the value in $array2 is used. + * + * @param array $array1 + * @param array $array2 + * @return array + */ + private function arrayMergeRecursive(array $array1, array $array2) + { + foreach ($array2 as $key => $value) { + if (\array_key_exists($key, $array1) && \is_array($array1[$key]) && \is_array($value)) { + $array1[$key] = $this->isAssoc($array1[$key]) && $this->isAssoc($value) ? $this->arrayMergeRecursive($array1[$key], $value) : \array_merge($array1[$key], $value); + } else { + $array1[$key] = $value; + } + } + return $array1; + } +} diff --git a/vendor/Gcp/google/gax/src/BidiStream.php b/vendor/Gcp/google/gax/src/BidiStream.php new file mode 100644 index 00000000..efccb318 --- /dev/null +++ b/vendor/Gcp/google/gax/src/BidiStream.php @@ -0,0 +1,168 @@ +call = $bidiStreamingCall; + if (\array_key_exists('resourcesGetMethod', $streamingDescriptor)) { + $this->resourcesGetMethod = $streamingDescriptor['resourcesGetMethod']; + } + } + /** + * Write request to the server. + * + * @param mixed $request The request to write + * @throws ValidationException + */ + public function write($request) + { + if ($this->isComplete) { + throw new ValidationException("Cannot call write() after streaming call is complete."); + } + if ($this->writesClosed) { + throw new ValidationException("Cannot call write() after calling closeWrite()."); + } + $this->call->write($request); + } + /** + * Write all requests in $requests. + * + * @param iterable $requests An Iterable of request objects to write to the server + * + * @throws ValidationException + */ + public function writeAll($requests = []) + { + foreach ($requests as $request) { + $this->write($request); + } + } + /** + * Inform the server that no more requests will be written. The write() function cannot be + * called after closeWrite() is called. + * @throws ValidationException + */ + public function closeWrite() + { + if ($this->isComplete) { + throw new ValidationException("Cannot call closeWrite() after streaming call is complete."); + } + if (!$this->writesClosed) { + $this->call->writesDone(); + $this->writesClosed = \true; + } + } + /** + * Read the next response from the server. Returns null if the streaming call completed + * successfully. Throws an ApiException if the streaming call failed. + * + * @throws ValidationException + * @throws ApiException + * @return mixed + */ + public function read() + { + if ($this->isComplete) { + throw new ValidationException("Cannot call read() after streaming call is complete."); + } + $resourcesGetMethod = $this->resourcesGetMethod; + if (!\is_null($resourcesGetMethod)) { + if (\count($this->pendingResources) === 0) { + $response = $this->call->read(); + if (!\is_null($response)) { + $pendingResources = []; + foreach ($response->{$resourcesGetMethod}() as $resource) { + $pendingResources[] = $resource; + } + $this->pendingResources = \array_reverse($pendingResources); + } + } + $result = \array_pop($this->pendingResources); + } else { + $result = $this->call->read(); + } + if (\is_null($result)) { + $status = $this->call->getStatus(); + $this->isComplete = \true; + if (!($status->code == Code::OK)) { + throw ApiException::createFromStdClass($status); + } + } + return $result; + } + /** + * Call closeWrite(), and read all responses from the server, until the streaming call is + * completed. Throws an ApiException if the streaming call failed. + * + * @throws ValidationException + * @throws ApiException + * @return \Generator|mixed[] + */ + public function closeWriteAndReadAll() + { + $this->closeWrite(); + $response = $this->read(); + while (!\is_null($response)) { + (yield $response); + $response = $this->read(); + } + } + /** + * Return the underlying gRPC call object + * + * @return \Grpc\BidiStreamingCall|mixed + */ + public function getBidiStreamingCall() + { + return $this->call; + } +} diff --git a/vendor/Gcp/google/gax/src/Call.php b/vendor/Gcp/google/gax/src/Call.php new file mode 100644 index 00000000..70ad40fe --- /dev/null +++ b/vendor/Gcp/google/gax/src/Call.php @@ -0,0 +1,111 @@ +method = $method; + $this->decodeType = $decodeType; + $this->message = $message; + $this->descriptor = $descriptor; + $this->callType = $callType; + } + /** + * @return string + */ + public function getMethod() + { + return $this->method; + } + /** + * @return int + */ + public function getCallType() + { + return $this->callType; + } + /** + * @return string + */ + public function getDecodeType() + { + return $this->decodeType; + } + /** + * @return mixed|Message + */ + public function getMessage() + { + return $this->message; + } + /** + * @return array|null + */ + public function getDescriptor() + { + return $this->descriptor; + } + /** + * @param mixed|Message $message + * @return Call + */ + public function withMessage($message) + { + // @phpstan-ignore-next-line + return new static($this->method, $this->decodeType, $message, $this->descriptor, $this->callType); + } +} diff --git a/vendor/Gcp/google/gax/src/ClientOptionsTrait.php b/vendor/Gcp/google/gax/src/ClientOptionsTrait.php new file mode 100644 index 00000000..3b40f392 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ClientOptionsTrait.php @@ -0,0 +1,247 @@ +mergeFromJsonString(\file_get_contents($confPath)); + $config = new Config($hostName, $apiConfig); + return $config; + } + /** + * Get default options. This function should be "overridden" by clients using late static + * binding to provide default options to the client. + * + * @return array + * @access private + */ + private static function getClientDefaults() + { + return []; + } + private function buildClientOptions(array $options) + { + // Build $defaultOptions starting from top level + // variables, then going into deeper nesting, so that + // we will not encounter missing keys + $defaultOptions = self::getClientDefaults(); + $defaultOptions += ['disableRetries' => \false, 'credentials' => null, 'credentialsConfig' => [], 'transport' => null, 'transportConfig' => [], 'gapicVersion' => self::getGapicVersion($options), 'libName' => null, 'libVersion' => null, 'apiEndpoint' => null, 'clientCertSource' => null, 'universeDomain' => null]; + $supportedTransports = $this->supportedTransports(); + foreach ($supportedTransports as $transportName) { + if (!\array_key_exists($transportName, $defaultOptions['transportConfig'])) { + $defaultOptions['transportConfig'][$transportName] = []; + } + } + if (\in_array('grpc', $supportedTransports)) { + $defaultOptions['transportConfig']['grpc'] = ['stubOpts' => ['grpc.service_config_disable_resolution' => 1]]; + } + // Keep track of the API Endpoint + $apiEndpoint = $options['apiEndpoint'] ?? null; + // Merge defaults into $options starting from top level + // variables, then going into deeper nesting, so that + // we will not encounter missing keys + $options += $defaultOptions; + $options['credentialsConfig'] += $defaultOptions['credentialsConfig']; + $options['transportConfig'] += $defaultOptions['transportConfig']; + // @phpstan-ignore-line + if (isset($options['transportConfig']['grpc'])) { + $options['transportConfig']['grpc'] += $defaultOptions['transportConfig']['grpc']; + $options['transportConfig']['grpc']['stubOpts'] += $defaultOptions['transportConfig']['grpc']['stubOpts']; + } + if (isset($options['transportConfig']['rest'])) { + $options['transportConfig']['rest'] += $defaultOptions['transportConfig']['rest']; + } + // These calls do not apply to "New Surface" clients. + if ($this->isBackwardsCompatibilityMode()) { + $preModifiedOptions = $options; + $this->modifyClientOptions($options); + // NOTE: this is required to ensure backwards compatiblity with $options['apiEndpoint'] + if ($options['apiEndpoint'] !== $preModifiedOptions['apiEndpoint']) { + $apiEndpoint = $options['apiEndpoint']; + } + // serviceAddress is now deprecated and acts as an alias for apiEndpoint + if (isset($options['serviceAddress'])) { + $apiEndpoint = $this->pluck('serviceAddress', $options, \false); + } + } else { + // Ads is using this method in their new surface clients, so we need to call it. + // However, this method is not used anywhere else for the new surface clients + // @TODO: Remove this in GAX V2 + $this->modifyClientOptions($options); + } + // If an API endpoint is different form the default, ensure the "audience" does not conflict + // with the custom endpoint by setting "user defined" scopes. + if ($apiEndpoint && $apiEndpoint != $defaultOptions['apiEndpoint'] && empty($options['credentialsConfig']['scopes']) && !empty($options['credentialsConfig']['defaultScopes'])) { + $options['credentialsConfig']['scopes'] = $options['credentialsConfig']['defaultScopes']; + } + // mTLS: detect and load the default clientCertSource if the environment variable + // "GOOGLE_API_USE_CLIENT_CERTIFICATE" is true, and the cert source is available + if (empty($options['clientCertSource']) && CredentialsLoader::shouldLoadClientCertSource()) { + if ($defaultCertSource = CredentialsLoader::getDefaultClientCertSource()) { + $options['clientCertSource'] = function () use($defaultCertSource) { + $cert = \call_user_func($defaultCertSource); + // the key and the cert are returned in one string + return [$cert, $cert]; + }; + } + } + // mTLS: If no apiEndpoint has been supplied by the user, and either + // GOOGLE_API_USE_MTLS_ENDPOINT tells us to, or mTLS is available, use the mTLS endpoint. + if (\is_null($apiEndpoint) && $this->shouldUseMtlsEndpoint($options)) { + $apiEndpoint = self::determineMtlsEndpoint($options['apiEndpoint']); + } + // If the user has not supplied a universe domain, use the environment variable if set. + // Otherwise, use the default ("googleapis.com"). + $options['universeDomain'] ??= \getenv('GOOGLE_CLOUD_UNIVERSE_DOMAIN') ?: GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN; + // mTLS: It is not valid to configure mTLS outside of "googleapis.com" (yet) + if (isset($options['clientCertSource']) && $options['universeDomain'] !== GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN) { + throw new ValidationException('mTLS is not supported outside the "googleapis.com" universe'); + } + if (\is_null($apiEndpoint)) { + if (\defined('self::SERVICE_ADDRESS_TEMPLATE')) { + // Derive the endpoint from the service address template and the universe domain + $apiEndpoint = \str_replace('UNIVERSE_DOMAIN', $options['universeDomain'], self::SERVICE_ADDRESS_TEMPLATE); + } else { + // For older clients, the service address template does not exist. Use the default + // endpoint instead. + $apiEndpoint = $defaultOptions['apiEndpoint']; + } + } + if (\extension_loaded('sysvshm') && isset($options['gcpApiConfigPath']) && \file_exists($options['gcpApiConfigPath']) && !empty($apiEndpoint)) { + $grpcGcpConfig = self::initGrpcGcpConfig($apiEndpoint, $options['gcpApiConfigPath']); + if (!\array_key_exists('stubOpts', $options['transportConfig']['grpc'])) { + $options['transportConfig']['grpc']['stubOpts'] = []; + } + $options['transportConfig']['grpc']['stubOpts'] += ['grpc_call_invoker' => $grpcGcpConfig->callInvoker()]; + } + $options['apiEndpoint'] = $apiEndpoint; + return $options; + } + private function shouldUseMtlsEndpoint(array $options) + { + $mtlsEndpointEnvVar = \getenv('GOOGLE_API_USE_MTLS_ENDPOINT'); + if ('always' === $mtlsEndpointEnvVar) { + return \true; + } + if ('never' === $mtlsEndpointEnvVar) { + return \false; + } + // For all other cases, assume "auto" and return true if clientCertSource exists + return !empty($options['clientCertSource']); + } + private static function determineMtlsEndpoint(string $apiEndpoint) + { + $parts = \explode('.', $apiEndpoint); + if (\count($parts) < 3) { + return $apiEndpoint; + // invalid endpoint! + } + return \sprintf('%s.mtls.%s', \array_shift($parts), \implode('.', $parts)); + } + /** + * @param mixed $credentials + * @param array $credentialsConfig + * @return CredentialsWrapper + * @throws ValidationException + */ + private function createCredentialsWrapper($credentials, array $credentialsConfig, string $universeDomain) + { + if (\is_null($credentials)) { + return CredentialsWrapper::build($credentialsConfig, $universeDomain); + } elseif (\is_string($credentials) || \is_array($credentials)) { + return CredentialsWrapper::build(['keyFile' => $credentials] + $credentialsConfig, $universeDomain); + } elseif ($credentials instanceof FetchAuthTokenInterface) { + $authHttpHandler = $credentialsConfig['authHttpHandler'] ?? null; + return new CredentialsWrapper($credentials, $authHttpHandler, $universeDomain); + } elseif ($credentials instanceof CredentialsWrapper) { + return $credentials; + } else { + throw new ValidationException('Unexpected value in $auth option, got: ' . \print_r($credentials, \true)); + } + } + /** + * This defaults to all three transports, which One-Platform supports. + * Discovery clients should define this function and only return ['rest']. + */ + private static function supportedTransports() + { + return ['grpc', 'grpc-fallback', 'rest']; + } + // Gapic Client Extension Points + // The methods below provide extension points that can be used to customize client + // functionality. These extension points are currently considered + // private and may change at any time. + /** + * Modify options passed to the client before calling setClientOptions. + * + * @param array $options + * @access private + * @internal + */ + protected function modifyClientOptions(array &$options) + { + // Do nothing - this method exists to allow option modification by partial veneers. + } + /** + * @internal + */ + private function isBackwardsCompatibilityMode() : bool + { + return \false; + } +} diff --git a/vendor/Gcp/google/gax/src/ClientStream.php b/vendor/Gcp/google/gax/src/ClientStream.php new file mode 100644 index 00000000..541effa7 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ClientStream.php @@ -0,0 +1,104 @@ +call = $clientStreamingCall; + } + /** + * Write request to the server. + * + * @param mixed $request The request to write + */ + public function write($request) + { + $this->call->write($request); + } + /** + * Read the response from the server, completing the streaming call. + * + * @throws ApiException + * @return mixed The response object from the server + */ + public function readResponse() + { + list($response, $status) = $this->call->wait(); + if ($status->code == Code::OK) { + return $response; + } else { + throw ApiException::createFromStdClass($status); + } + } + /** + * Write all data in $dataArray and read the response from the server, completing the streaming + * call. + * + * @param mixed[] $requests An iterator of request objects to write to the server + * @return mixed The response object from the server + */ + public function writeAllAndReadResponse(array $requests) + { + foreach ($requests as $request) { + $this->write($request); + } + return $this->readResponse(); + } + /** + * Return the underlying gRPC call object + * + * @return \Grpc\ClientStreamingCall|mixed + */ + public function getClientStreamingCall() + { + return $this->call; + } +} diff --git a/vendor/Gcp/google/gax/src/CredentialsWrapper.php b/vendor/Gcp/google/gax/src/CredentialsWrapper.php new file mode 100644 index 00000000..fb73e6d5 --- /dev/null +++ b/vendor/Gcp/google/gax/src/CredentialsWrapper.php @@ -0,0 +1,277 @@ +credentialsFetcher = $credentialsFetcher; + $this->authHttpHandler = $authHttpHandler ?: self::buildHttpHandlerFactory(); + if (empty($universeDomain)) { + throw new ValidationException('The universe domain cannot be empty'); + } + $this->universeDomain = $universeDomain; + } + /** + * Factory method to create a CredentialsWrapper from an array of options. + * + * @param array $args { + * An array of optional arguments. + * + * @type string|array $keyFile + * Credentials to be used. Accepts either a path to a credentials file, or a decoded + * credentials file as a PHP array. If this is not specified, application default + * credentials will be used. + * @type string[] $scopes + * A string array of scopes to use when acquiring credentials. + * @type callable $authHttpHandler + * A handler used to deliver PSR-7 requests specifically + * for authentication. Should match a signature of + * `function (RequestInterface $request, array $options) : ResponseInterface`. + * @type bool $enableCaching + * Enable caching of access tokens. Defaults to true. + * @type CacheItemPoolInterface $authCache + * A cache for storing access tokens. Defaults to a simple in memory implementation. + * @type array $authCacheOptions + * Cache configuration options. + * @type string $quotaProject + * Specifies a user project to bill for access charges associated with the request. + * @type string[] $defaultScopes + * A string array of default scopes to use when acquiring + * credentials. + * @type bool $useJwtAccessWithScope + * Ensures service account credentials use JWT Access (also known as self-signed + * JWTs), even when user-defined scopes are supplied. + * } + * @param string $universeDomain The expected universe of the credentials. Defaults to + * "googleapis.com" + * @return CredentialsWrapper + * @throws ValidationException + */ + public static function build(array $args = [], string $universeDomain = GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN) + { + $args += ['keyFile' => null, 'scopes' => null, 'authHttpHandler' => null, 'enableCaching' => \true, 'authCache' => null, 'authCacheOptions' => [], 'quotaProject' => null, 'defaultScopes' => null, 'useJwtAccessWithScope' => \true]; + $keyFile = $args['keyFile']; + $authHttpHandler = $args['authHttpHandler'] ?: self::buildHttpHandlerFactory(); + if (\is_null($keyFile)) { + $loader = self::buildApplicationDefaultCredentials($args['scopes'], $authHttpHandler, $args['authCacheOptions'], $args['authCache'], $args['quotaProject'], $args['defaultScopes']); + if ($loader instanceof FetchAuthTokenCache) { + $loader = $loader->getFetcher(); + } + } else { + if (\is_string($keyFile)) { + if (!\file_exists($keyFile)) { + throw new ValidationException("Could not find keyfile: {$keyFile}"); + } + $keyFile = \json_decode(\file_get_contents($keyFile), \true); + } + if (isset($args['quotaProject'])) { + $keyFile['quota_project_id'] = $args['quotaProject']; + } + $loader = CredentialsLoader::makeCredentials($args['scopes'], $keyFile, $args['defaultScopes']); + } + if ($loader instanceof ServiceAccountCredentials && $args['useJwtAccessWithScope']) { + // Ensures the ServiceAccountCredentials uses JWT Access, also known + // as self-signed JWTs, even when user-defined scopes are supplied. + $loader->useJwtAccessWithScope(); + } + if ($args['enableCaching']) { + $authCache = $args['authCache'] ?: new MemoryCacheItemPool(); + $loader = new FetchAuthTokenCache($loader, $args['authCacheOptions'], $authCache); + } + return new CredentialsWrapper($loader, $authHttpHandler, $universeDomain); + } + /** + * @return string|null The quota project associated with the credentials. + */ + public function getQuotaProject() + { + if ($this->credentialsFetcher instanceof GetQuotaProjectInterface) { + return $this->credentialsFetcher->getQuotaProject(); + } + return null; + } + public function getProjectId(callable $httpHandler = null) : ?string + { + // Ensure that FetchAuthTokenCache does not throw an exception + if ($this->credentialsFetcher instanceof FetchAuthTokenCache && !$this->credentialsFetcher->getFetcher() instanceof ProjectIdProviderInterface) { + return null; + } + if ($this->credentialsFetcher instanceof ProjectIdProviderInterface) { + return $this->credentialsFetcher->getProjectId($httpHandler); + } + return null; + } + /** + * @deprecated + * @return string Bearer string containing access token. + */ + public function getBearerString() + { + $token = $this->credentialsFetcher->getLastReceivedToken(); + if (self::isExpired($token)) { + $this->checkUniverseDomain(); + $token = $this->credentialsFetcher->fetchAuthToken($this->authHttpHandler); + if (!self::isValid($token)) { + return ''; + } + } + return empty($token['access_token']) ? '' : 'Bearer ' . $token['access_token']; + } + /** + * @param string $audience optional audience for self-signed JWTs. + * @return callable Callable function that returns an authorization header. + */ + public function getAuthorizationHeaderCallback($audience = null) + { + // NOTE: changes to this function should be treated carefully and tested thoroughly. It will + // be passed into the gRPC c extension, and changes have the potential to trigger very + // difficult-to-diagnose segmentation faults. + return function () use($audience) { + $token = $this->credentialsFetcher->getLastReceivedToken(); + if (self::isExpired($token)) { + $this->checkUniverseDomain(); + // Call updateMetadata to take advantage of self-signed JWTs + if ($this->credentialsFetcher instanceof UpdateMetadataInterface) { + return $this->credentialsFetcher->updateMetadata([], $audience); + } + // In case a custom fetcher is provided (unlikely) which doesn't + // implement UpdateMetadataInterface + $token = $this->credentialsFetcher->fetchAuthToken($this->authHttpHandler); + if (!self::isValid($token)) { + return []; + } + } + $tokenString = $token['access_token']; + if (!empty($tokenString)) { + return ['authorization' => ["Bearer {$tokenString}"]]; + } + return []; + }; + } + /** + * Verify that the expected universe domain matches the universe domain from the credentials. + */ + public function checkUniverseDomain() + { + if (\false === $this->hasCheckedUniverse) { + $credentialsUniverse = $this->credentialsFetcher instanceof GetUniverseDomainInterface ? $this->credentialsFetcher->getUniverseDomain() : GetUniverseDomainInterface::DEFAULT_UNIVERSE_DOMAIN; + if ($credentialsUniverse !== $this->universeDomain) { + throw new ValidationException(\sprintf('The configured universe domain (%s) does not match the credential universe domain (%s)', $this->universeDomain, $credentialsUniverse)); + } + $this->hasCheckedUniverse = \true; + } + } + /** + * @return Guzzle6HttpHandler|Guzzle7HttpHandler + * @throws ValidationException + */ + private static function buildHttpHandlerFactory() + { + try { + return HttpHandlerFactory::build(); + } catch (Exception $ex) { + throw new ValidationException("Failed to build HttpHandler", $ex->getCode(), $ex); + } + } + /** + * @param array $scopes + * @param callable $authHttpHandler + * @param array $authCacheOptions + * @param CacheItemPoolInterface $authCache + * @param string $quotaProject + * @param array $defaultScopes + * @return FetchAuthTokenInterface + * @throws ValidationException + */ + private static function buildApplicationDefaultCredentials(array $scopes = null, callable $authHttpHandler = null, array $authCacheOptions = null, CacheItemPoolInterface $authCache = null, $quotaProject = null, array $defaultScopes = null) + { + try { + return ApplicationDefaultCredentials::getCredentials($scopes, $authHttpHandler, $authCacheOptions, $authCache, $quotaProject, $defaultScopes); + } catch (DomainException $ex) { + throw new ValidationException("Could not construct ApplicationDefaultCredentials", $ex->getCode(), $ex); + } + } + /** + * @param mixed $token + */ + private static function isValid($token) + { + return \is_array($token) && \array_key_exists('access_token', $token); + } + /** + * @param mixed $token + */ + private static function isExpired($token) + { + return !(self::isValid($token) && \array_key_exists('expires_at', $token) && $token['expires_at'] > \time() + self::$eagerRefreshThresholdSeconds); + } +} diff --git a/vendor/Gcp/google/gax/src/FixedSizeCollection.php b/vendor/Gcp/google/gax/src/FixedSizeCollection.php new file mode 100644 index 00000000..5c9888f3 --- /dev/null +++ b/vendor/Gcp/google/gax/src/FixedSizeCollection.php @@ -0,0 +1,172 @@ + 0. collectionSize: {$collectionSize}"); + } + if ($collectionSize < $initialPage->getPageElementCount()) { + $ipc = $initialPage->getPageElementCount(); + throw new InvalidArgumentException("collectionSize must be greater than or equal to the number of " . "elements in initialPage. collectionSize: {$collectionSize}, " . "initialPage size: {$ipc}"); + } + $this->collectionSize = $collectionSize; + $this->pageList = FixedSizeCollection::createPageArray($initialPage, $collectionSize); + } + /** + * Returns the number of elements in the collection. This will be + * equal to the collectionSize parameter used at construction + * unless there are no elements remaining to be retrieved. + * + * @return int + */ + public function getCollectionSize() + { + $size = 0; + foreach ($this->pageList as $page) { + $size += $page->getPageElementCount(); + } + return $size; + } + /** + * Returns true if there are more elements that can be retrieved + * from the API. + * + * @return bool + */ + public function hasNextCollection() + { + return $this->getLastPage()->hasNextPage(); + } + /** + * Returns a page token that can be passed into the API list + * method to retrieve additional elements. + * + * @return string + */ + public function getNextPageToken() + { + return $this->getLastPage()->getNextPageToken(); + } + /** + * Retrieves the next FixedSizeCollection using one or more API calls. + * + * @return FixedSizeCollection + */ + public function getNextCollection() + { + $lastPage = $this->getLastPage(); + $nextPage = $lastPage->getNextPage($this->collectionSize); + return new FixedSizeCollection($nextPage, $this->collectionSize); + } + /** + * Returns an iterator over the elements of the collection. + * + * @return Generator + */ + #[\ReturnTypeWillChange] + public function getIterator() + { + foreach ($this->pageList as $page) { + foreach ($page as $element) { + (yield $element); + } + } + } + /** + * Returns an iterator over FixedSizeCollections, starting with this + * and making API calls as required until all of the elements have + * been retrieved. + * + * @return Generator|FixedSizeCollection[] + */ + public function iterateCollections() + { + $currentCollection = $this; + (yield $this); + while ($currentCollection->hasNextCollection()) { + $currentCollection = $currentCollection->getNextCollection(); + (yield $currentCollection); + } + } + private function getLastPage() + { + $pageList = $this->pageList; + // Get last element in array... + $lastPage = \end($pageList); + \reset($pageList); + return $lastPage; + } + /** + * @param Page $initialPage + * @param int $collectionSize + * @return Page[] + */ + private static function createPageArray(Page $initialPage, int $collectionSize) + { + $pageList = [$initialPage]; + $currentPage = $initialPage; + $itemCount = $currentPage->getPageElementCount(); + while ($itemCount < $collectionSize && $currentPage->hasNextPage()) { + $remainingCount = $collectionSize - $itemCount; + $currentPage = $currentPage->getNextPage($remainingCount); + $rxElementCount = $currentPage->getPageElementCount(); + if ($rxElementCount > $remainingCount) { + throw new LengthException("API returned a number of elements " . "exceeding the specified page size limit. page size: " . "{$remainingCount}, elements received: {$rxElementCount}"); + } + \array_push($pageList, $currentPage); + $itemCount += $rxElementCount; + } + return $pageList; + } +} diff --git a/vendor/Gcp/google/gax/src/GPBLabel.php b/vendor/Gcp/google/gax/src/GPBLabel.php new file mode 100644 index 00000000..4c7399aa --- /dev/null +++ b/vendor/Gcp/google/gax/src/GPBLabel.php @@ -0,0 +1,44 @@ + $middlewareCallables */ + private array $middlewareCallables = []; + private array $transportCallMethods = [Call::UNARY_CALL => 'startUnaryCall', Call::BIDI_STREAMING_CALL => 'startBidiStreamingCall', Call::CLIENT_STREAMING_CALL => 'startClientStreamingCall', Call::SERVER_STREAMING_CALL => 'startServerStreamingCall']; + private bool $backwardsCompatibilityMode; + /** + * Add a middleware to the call stack by providing a callable which will be + * invoked at the start of each call, and will return an instance of + * {@see MiddlewareInterface} when invoked. + * + * The callable must have the following method signature: + * + * callable(MiddlewareInterface): MiddlewareInterface + * + * An implementation may look something like this: + * ``` + * $client->addMiddleware(function (MiddlewareInterface $handler) { + * return new class ($handler) implements MiddlewareInterface { + * public function __construct(private MiddlewareInterface $handler) { + * } + * + * public function __invoke(Call $call, array $options) { + * // modify call and options (pre-request) + * $response = ($this->handler)($call, $options); + * // modify the response (post-request) + * return $response; + * } + * }; + * }); + * ``` + * + * @param callable $middlewareCallable A callable which returns an instance + * of {@see MiddlewareInterface} when invoked with a + * MiddlewareInterface instance as its first argument. + * @return void + */ + public function addMiddleware(callable $middlewareCallable) : void + { + $this->middlewareCallables[] = $middlewareCallable; + } + /** + * Initiates an orderly shutdown in which preexisting calls continue but new + * calls are immediately cancelled. + * + * @experimental + */ + public function close() + { + $this->transport->close(); + } + /** + * Get the transport for the client. This method is protected to support + * use by customized clients. + * + * @access private + * @return TransportInterface + */ + protected function getTransport() + { + return $this->transport; + } + /** + * Get the credentials for the client. This method is protected to support + * use by customized clients. + * + * @access private + * @return CredentialsWrapper + */ + protected function getCredentialsWrapper() + { + return $this->credentialsWrapper; + } + /** + * Configures the GAPIC client based on an array of options. + * + * @param array $options { + * An array of required and optional arguments. + * + * @type string $apiEndpoint + * The address of the API remote host, for example "example.googleapis.com. May also + * include the port, for example "example.googleapis.com:443" + * @type bool $disableRetries + * Determines whether or not retries defined by the client configuration should be + * disabled. Defaults to `false`. + * @type string|array $clientConfig + * Client method configuration, including retry settings. This option can be either a + * path to a JSON file, or a PHP array containing the decoded JSON data. + * By default this settings points to the default client config file, which is provided + * in the resources folder. + * @type string|array|FetchAuthTokenInterface|CredentialsWrapper $credentials + * The credentials to be used by the client to authorize API calls. This option + * accepts either a path to a credentials file, or a decoded credentials file as a + * PHP array. + * *Advanced usage*: In addition, this option can also accept a pre-constructed + * \Google\Auth\FetchAuthTokenInterface object or \Google\ApiCore\CredentialsWrapper + * object. Note that when one of these objects are provided, any settings in + * $authConfig will be ignored. + * @type array $credentialsConfig + * Options used to configure credentials, including auth token caching, for the client. + * For a full list of supporting configuration options, see + * \Google\ApiCore\CredentialsWrapper::build. + * @type string|TransportInterface $transport + * The transport used for executing network requests. May be either the string `rest`, + * `grpc`, or 'grpc-fallback'. Defaults to `grpc` if gRPC support is detected on the system. + * *Advanced usage*: Additionally, it is possible to pass in an already instantiated + * TransportInterface object. Note that when this objects is provided, any settings in + * $transportConfig, and any `$apiEndpoint` setting, will be ignored. + * @type array $transportConfig + * Configuration options that will be used to construct the transport. Options for + * each supported transport type should be passed in a key for that transport. For + * example: + * $transportConfig = [ + * 'grpc' => [...], + * 'rest' => [...], + * 'grpc-fallback' => [...], + * ]; + * See the GrpcTransport::build and RestTransport::build + * methods for the supported options. + * @type string $versionFile + * The path to a file which contains the current version of the client. + * @type string $descriptorsConfigPath + * The path to a descriptor configuration file. + * @type string $serviceName + * The name of the service. + * @type string $libName + * The name of the client application. + * @type string $libVersion + * The version of the client application. + * @type string $gapicVersion + * The code generator version of the GAPIC library. + * @type callable $clientCertSource + * A callable which returns the client cert as a string. + * } + * @throws ValidationException + */ + private function setClientOptions(array $options) + { + // serviceAddress is now deprecated and acts as an alias for apiEndpoint + if (isset($options['serviceAddress'])) { + $options['apiEndpoint'] = $this->pluck('serviceAddress', $options, \false); + } + $this->validateNotNull($options, ['apiEndpoint', 'serviceName', 'descriptorsConfigPath', 'clientConfig', 'disableRetries', 'credentialsConfig', 'transportConfig']); + $this->traitValidate($options, ['credentials', 'transport', 'gapicVersion', 'libName', 'libVersion']); + if ($this->isBackwardsCompatibilityMode()) { + if (\is_string($options['clientConfig'])) { + // perform validation for V1 surfaces which is done in the + // ClientOptions class for v2 surfaces. + $options['clientConfig'] = \json_decode(\file_get_contents($options['clientConfig']), \true); + self::validateFileExists($options['descriptorsConfigPath']); + } + } else { + // cast to ClientOptions for new surfaces only + $options = new ClientOptions($options); + } + $this->serviceName = $options['serviceName']; + $this->retrySettings = RetrySettings::load($this->serviceName, $options['clientConfig'], $options['disableRetries']); + $headerInfo = ['libName' => $options['libName'], 'libVersion' => $options['libVersion'], 'gapicVersion' => $options['gapicVersion']]; + // Edge case: If the client has the gRPC extension installed, but is + // a REST-only library, then the grpcVersion header should not be set. + if ($this->transport instanceof GrpcTransport) { + $headerInfo['grpcVersion'] = \phpversion('grpc'); + } elseif ($this->transport instanceof RestTransport || $this->transport instanceof GrpcFallbackTransport) { + $headerInfo['restVersion'] = Version::getApiCoreVersion(); + } + $this->agentHeader = AgentHeader::buildAgentHeader($headerInfo); + // Set "client_library_name" depending on client library surface being used + $userAgentHeader = \sprintf('gcloud-php-%s/%s', $this->isBackwardsCompatibilityMode() ? 'legacy' : 'new', $options['gapicVersion']); + $this->agentHeader['User-Agent'] = [$userAgentHeader]; + self::validateFileExists($options['descriptorsConfigPath']); + $descriptors = (require $options['descriptorsConfigPath']); + $this->descriptors = $descriptors['interfaces'][$this->serviceName]; + $this->credentialsWrapper = $this->createCredentialsWrapper($options['credentials'], $options['credentialsConfig'], $options['universeDomain']); + $transport = $options['transport'] ?: self::defaultTransport(); + $this->transport = $transport instanceof TransportInterface ? $transport : $this->createTransport($options['apiEndpoint'], $transport, $options['transportConfig'], $options['clientCertSource']); + } + /** + * @param string $apiEndpoint + * @param string $transport + * @param TransportOptions|array $transportConfig + * @param callable $clientCertSource + * @return TransportInterface + * @throws ValidationException + */ + private function createTransport(string $apiEndpoint, $transport, $transportConfig, callable $clientCertSource = null) + { + if (!\is_string($transport)) { + throw new ValidationException("'transport' must be a string, instead got:" . \print_r($transport, \true)); + } + $supportedTransports = self::supportedTransports(); + if (!\in_array($transport, $supportedTransports)) { + throw new ValidationException(\sprintf('Unexpected transport option "%s". Supported transports: %s', $transport, \implode(', ', $supportedTransports))); + } + $configForSpecifiedTransport = $transportConfig[$transport] ?? []; + if (\is_array($configForSpecifiedTransport)) { + $configForSpecifiedTransport['clientCertSource'] = $clientCertSource; + } else { + $configForSpecifiedTransport->setClientCertSource($clientCertSource); + $configForSpecifiedTransport = $configForSpecifiedTransport->toArray(); + } + switch ($transport) { + case 'grpc': + // Setting the user agent for gRPC requires special handling + if (isset($this->agentHeader['User-Agent'])) { + if ($configForSpecifiedTransport['stubOpts']['grpc.primary_user_agent'] ??= '') { + $configForSpecifiedTransport['stubOpts']['grpc.primary_user_agent'] .= ' '; + } + $configForSpecifiedTransport['stubOpts']['grpc.primary_user_agent'] .= $this->agentHeader['User-Agent'][0]; + } + return GrpcTransport::build($apiEndpoint, $configForSpecifiedTransport); + case 'grpc-fallback': + return GrpcFallbackTransport::build($apiEndpoint, $configForSpecifiedTransport); + case 'rest': + if (!isset($configForSpecifiedTransport['restClientConfigPath'])) { + throw new ValidationException("The 'restClientConfigPath' config is required for 'rest' transport."); + } + $restConfigPath = $configForSpecifiedTransport['restClientConfigPath']; + return RestTransport::build($apiEndpoint, $restConfigPath, $configForSpecifiedTransport); + default: + throw new ValidationException("Unexpected 'transport' option: {$transport}. " . "Supported values: ['grpc', 'rest', 'grpc-fallback']"); + } + } + /** + * @param array $options + * @return OperationsClient + */ + private function createOperationsClient(array $options) + { + $this->pluckArray(['serviceName', 'clientConfig', 'descriptorsConfigPath'], $options); + // User-supplied operations client + if ($operationsClient = $this->pluck('operationsClient', $options, \false)) { + return $operationsClient; + } + // operationsClientClass option + $operationsClientClass = $this->pluck('operationsClientClass', $options, \false) ?: OperationsCLient::class; + return new $operationsClientClass($options); + } + /** + * @return string + */ + private static function defaultTransport() + { + return self::getGrpcDependencyStatus() ? 'grpc' : 'rest'; + } + private function validateCallConfig(string $methodName) + { + // Ensure a method descriptor exists for the target method. + if (!isset($this->descriptors[$methodName])) { + throw new ValidationException("Requested method '{$methodName}' does not exist in descriptor configuration."); + } + $methodDescriptors = $this->descriptors[$methodName]; + // Ensure required descriptor configuration exists. + if (!isset($methodDescriptors['callType'])) { + throw new ValidationException("Requested method '{$methodName}' does not have a callType " . 'in descriptor configuration.'); + } + $callType = $methodDescriptors['callType']; + // Validate various callType specific configurations. + if ($callType == Call::LONGRUNNING_CALL) { + if (!isset($methodDescriptors['longRunning'])) { + throw new ValidationException("Requested method '{$methodName}' does not have a longRunning config " . 'in descriptor configuration.'); + } + // @TODO: check if the client implements `OperationsClientInterface` instead + if (!\method_exists($this, 'getOperationsClient')) { + throw new ValidationException('Client missing required getOperationsClient ' . "for longrunning call '{$methodName}'"); + } + } elseif ($callType == Call::PAGINATED_CALL) { + if (!isset($methodDescriptors['pageStreaming'])) { + throw new ValidationException("Requested method '{$methodName}' with callType PAGINATED_CALL does not " . 'have a pageStreaming in descriptor configuration.'); + } + } + // LRO are either Standard LRO response type or custom, which are handled by + // startOperationCall, so no need to validate responseType for those callType. + if ($callType != Call::LONGRUNNING_CALL) { + if (!isset($methodDescriptors['responseType'])) { + throw new ValidationException("Requested method '{$methodName}' does not have a responseType " . 'in descriptor configuration.'); + } + } + return $methodDescriptors; + } + /** + * @param string $methodName + * @param Message $request + * @param array $optionalArgs { + * Call Options + * + * @type array $headers [optional] key-value array containing headers + * @type int $timeoutMillis [optional] the timeout in milliseconds for the call + * @type array $transportOptions [optional] transport-specific call options + * @type RetrySettings|array $retrySettings [optional] A retry settings override for the call. + * } + * + * @experimental + * + * @return PromiseInterface + */ + private function startAsyncCall(string $methodName, Message $request, array $optionalArgs = []) + { + // Convert method name to the UpperCamelCase of RPC names from lowerCamelCase of GAPIC method names + // in order to find the method in the descriptor config. + $methodName = \ucfirst($methodName); + $methodDescriptors = $this->validateCallConfig($methodName); + $callType = $methodDescriptors['callType']; + switch ($callType) { + case Call::PAGINATED_CALL: + return $this->getPagedListResponseAsync($methodName, $optionalArgs, $methodDescriptors['responseType'], $request, $methodDescriptors['interfaceOverride'] ?? $this->serviceName); + case Call::SERVER_STREAMING_CALL: + case Call::CLIENT_STREAMING_CALL: + case Call::BIDI_STREAMING_CALL: + throw new ValidationException("Call type '{$callType}' of requested method " . "'{$methodName}' is not supported for async execution."); + } + return $this->startApiCall($methodName, $request, $optionalArgs); + } + /** + * @param string $methodName + * @param Message $request + * @param array $optionalArgs { + * Call Options + * + * @type array $headers [optional] key-value array containing headers + * @type int $timeoutMillis [optional] the timeout in milliseconds for the call + * @type array $transportOptions [optional] transport-specific call options + * @type RetrySettings|array $retrySettings [optional] A retry settings + * override for the call. + * } + * + * @experimental + * + * @return PromiseInterface|PagedListResponse|BidiStream|ClientStream|ServerStream + */ + private function startApiCall(string $methodName, Message $request = null, array $optionalArgs = []) + { + $methodDescriptors = $this->validateCallConfig($methodName); + $callType = $methodDescriptors['callType']; + // Prepare request-based headers, merge with user-provided headers, + // which take precedence. + $headerParams = $methodDescriptors['headerParams'] ?? []; + $requestHeaders = $this->buildRequestParamsHeader($headerParams, $request); + $optionalArgs['headers'] = \array_merge($requestHeaders, $optionalArgs['headers'] ?? []); + // Default the interface name, if not set, to the client's protobuf service name. + $interfaceName = $methodDescriptors['interfaceOverride'] ?? $this->serviceName; + // Handle call based on call type configured in the method descriptor config. + if ($callType == Call::LONGRUNNING_CALL) { + return $this->startOperationsCall( + $methodName, + $optionalArgs, + $request, + $this->getOperationsClient(), + $interfaceName, + // Custom operations will define their own operation response type, whereas standard + // LRO defaults to the same type. + $methodDescriptors['responseType'] ?? null + ); + } + // Fully-qualified name of the response message PHP class. + $decodeType = $methodDescriptors['responseType']; + if ($callType == Call::PAGINATED_CALL) { + return $this->getPagedListResponse($methodName, $optionalArgs, $decodeType, $request, $interfaceName); + } + // Unary, and all Streaming types handled by startCall. + return $this->startCall($methodName, $decodeType, $optionalArgs, $request, $callType, $interfaceName); + } + /** + * @param string $methodName + * @param string $decodeType + * @param array $optionalArgs { + * Call Options + * + * @type array $headers [optional] key-value array containing headers + * @type int $timeoutMillis [optional] the timeout in milliseconds for the call + * @type array $transportOptions [optional] transport-specific call options + * @type RetrySettings|array $retrySettings [optional] A retry settings + * override for the call. + * } + * @param Message $request + * @param int $callType + * @param string $interfaceName + * + * @return PromiseInterface|BidiStream|ClientStream|ServerStream + */ + private function startCall(string $methodName, string $decodeType, array $optionalArgs = [], Message $request = null, int $callType = Call::UNARY_CALL, string $interfaceName = null) + { + $optionalArgs = $this->configureCallOptions($optionalArgs); + $callStack = $this->createCallStack($this->configureCallConstructionOptions($methodName, $optionalArgs)); + $descriptor = $this->descriptors[$methodName]['grpcStreaming'] ?? null; + $call = new Call($this->buildMethod($interfaceName, $methodName), $decodeType, $request, $descriptor, $callType); + switch ($callType) { + case Call::UNARY_CALL: + $this->modifyUnaryCallable($callStack); + break; + case Call::BIDI_STREAMING_CALL: + case Call::CLIENT_STREAMING_CALL: + case Call::SERVER_STREAMING_CALL: + $this->modifyStreamingCallable($callStack); + break; + } + return $callStack($call, $optionalArgs + \array_filter(['audience' => self::getDefaultAudience()])); + } + /** + * @param array $callConstructionOptions { + * Call Construction Options + * + * @type RetrySettings $retrySettings [optional] A retry settings override + * For the call. + * } + * + * @return callable + */ + private function createCallStack(array $callConstructionOptions) + { + $quotaProject = $this->credentialsWrapper->getQuotaProject(); + $fixedHeaders = $this->agentHeader; + if ($quotaProject) { + $fixedHeaders += ['X-Goog-User-Project' => [$quotaProject]]; + } + $callStack = function (Call $call, array $options) { + $startCallMethod = $this->transportCallMethods[$call->getCallType()]; + return $this->transport->{$startCallMethod}($call, $options); + }; + $callStack = new CredentialsWrapperMiddleware($callStack, $this->credentialsWrapper); + $callStack = new FixedHeaderMiddleware($callStack, $fixedHeaders, \true); + $callStack = new RetryMiddleware($callStack, $callConstructionOptions['retrySettings']); + $callStack = new OptionsFilterMiddleware($callStack, ['headers', 'timeoutMillis', 'transportOptions', 'metadataCallback', 'audience', 'metadataReturnType']); + foreach (\array_reverse($this->middlewareCallables) as $fn) { + /** @var MiddlewareInterface $callStack */ + $callStack = $fn($callStack); + } + return $callStack; + } + /** + * @param string $methodName + * @param array $optionalArgs { + * Optional arguments + * + * @type RetrySettings|array $retrySettings [optional] A retry settings + * override for the call. + * } + * + * @return array + */ + private function configureCallConstructionOptions(string $methodName, array $optionalArgs) + { + $retrySettings = $this->retrySettings[$methodName]; + // Allow for retry settings to be changed at call time + if (isset($optionalArgs['retrySettings'])) { + if ($optionalArgs['retrySettings'] instanceof RetrySettings) { + $retrySettings = $optionalArgs['retrySettings']; + } else { + $retrySettings = $retrySettings->with($optionalArgs['retrySettings']); + } + } + return ['retrySettings' => $retrySettings]; + } + /** + * @return array + */ + private function configureCallOptions(array $optionalArgs) : array + { + if ($this->isBackwardsCompatibilityMode()) { + return $optionalArgs; + } + // cast to CallOptions for new surfaces only + return (new CallOptions($optionalArgs))->toArray(); + } + /** + * @param string $methodName + * @param array $optionalArgs { + * Call Options + * + * @type array $headers [optional] key-value array containing headers + * @type int $timeoutMillis [optional] the timeout in milliseconds for the call + * @type array $transportOptions [optional] transport-specific call options + * } + * @param Message $request + * @param OperationsClient|object $client + * @param string $interfaceName + * @param string $operationClass If provided, will be used instead of the default + * operation response class of {@see \Google\LongRunning\Operation}. + * + * @return PromiseInterface + */ + private function startOperationsCall(string $methodName, array $optionalArgs, Message $request, $client, string $interfaceName = null, string $operationClass = null) + { + $optionalArgs = $this->configureCallOptions($optionalArgs); + $callStack = $this->createCallStack($this->configureCallConstructionOptions($methodName, $optionalArgs)); + $descriptor = $this->descriptors[$methodName]['longRunning']; + $metadataReturnType = null; + // Call the methods supplied in "additionalArgumentMethods" on the request Message object + // to build the "additionalOperationArguments" option for the operation response. + if (isset($descriptor['additionalArgumentMethods'])) { + $additionalArgs = []; + foreach ($descriptor['additionalArgumentMethods'] as $additionalArgsMethodName) { + $additionalArgs[] = $request->{$additionalArgsMethodName}(); + } + $descriptor['additionalOperationArguments'] = $additionalArgs; + unset($descriptor['additionalArgumentMethods']); + } + if (isset($descriptor['metadataReturnType'])) { + $metadataReturnType = $descriptor['metadataReturnType']; + } + $callStack = new OperationsMiddleware($callStack, $client, $descriptor); + $call = new Call($this->buildMethod($interfaceName, $methodName), $operationClass ?: Operation::class, $request, [], Call::UNARY_CALL); + $this->modifyUnaryCallable($callStack); + return $callStack($call, $optionalArgs + \array_filter(['metadataReturnType' => $metadataReturnType, 'audience' => self::getDefaultAudience()])); + } + /** + * @param string $methodName + * @param array $optionalArgs + * @param string $decodeType + * @param Message $request + * @param string $interfaceName + * + * @return PagedListResponse + */ + private function getPagedListResponse(string $methodName, array $optionalArgs, string $decodeType, Message $request, string $interfaceName = null) + { + return $this->getPagedListResponseAsync($methodName, $optionalArgs, $decodeType, $request, $interfaceName)->wait(); + } + /** + * @param string $methodName + * @param array $optionalArgs + * @param string $decodeType + * @param Message $request + * @param string $interfaceName + * + * @return PromiseInterface + */ + private function getPagedListResponseAsync(string $methodName, array $optionalArgs, string $decodeType, Message $request, string $interfaceName = null) + { + $optionalArgs = $this->configureCallOptions($optionalArgs); + $callStack = $this->createCallStack($this->configureCallConstructionOptions($methodName, $optionalArgs)); + $descriptor = new PageStreamingDescriptor($this->descriptors[$methodName]['pageStreaming']); + $callStack = new PagedMiddleware($callStack, $descriptor); + $call = new Call($this->buildMethod($interfaceName, $methodName), $decodeType, $request, [], Call::UNARY_CALL); + $this->modifyUnaryCallable($callStack); + return $callStack($call, $optionalArgs + \array_filter(['audience' => self::getDefaultAudience()])); + } + /** + * @param string $interfaceName + * @param string $methodName + * + * @return string + */ + private function buildMethod(string $interfaceName = null, string $methodName = null) + { + return \sprintf('%s/%s', $interfaceName ?: $this->serviceName, $methodName); + } + /** + * @param array $headerParams + * @param Message|null $request + * + * @return array + */ + private function buildRequestParamsHeader(array $headerParams, Message $request = null) + { + $headers = []; + // No request message means no request-based headers. + if (!$request) { + return $headers; + } + foreach ($headerParams as $headerParam) { + $msg = $request; + $value = null; + foreach ($headerParam['fieldAccessors'] as $accessor) { + $value = $msg->{$accessor}(); + // In case the field in question is nested in another message, + // skip the header param when the nested message field is unset. + $msg = $value; + if (\is_null($msg)) { + break; + } + } + $keyName = $headerParam['keyName']; + // If there are value pattern matchers configured and the target + // field was set, evaluate the matchers in the order that they were + // annotated in with last one matching wins. + $original = $value; + $matchers = isset($headerParam['matchers']) && !\is_null($value) ? $headerParam['matchers'] : []; + foreach ($matchers as $matcher) { + $matches = []; + if (\preg_match($matcher, $original, $matches)) { + $value = $matches[$keyName]; + } + } + // If there are no matches or the target field was unset, skip this + // header param. + if (!$value) { + continue; + } + $headers[$keyName] = $value; + } + $requestParams = new RequestParamsHeaderDescriptor($headers); + return $requestParams->getHeader(); + } + /** + * The SERVICE_ADDRESS constant is set by GAPIC clients + */ + private static function getDefaultAudience() + { + if (!\defined('self::SERVICE_ADDRESS')) { + return null; + } + return 'https://' . self::SERVICE_ADDRESS . '/'; + // @phpstan-ignore-line + } + /** + * Modify the unary callable. + * + * @param callable $callable + * @access private + */ + protected function modifyUnaryCallable(callable &$callable) + { + // Do nothing - this method exists to allow callable modification by partial veneers. + } + /** + * Modify the streaming callable. + * + * @param callable $callable + * @access private + */ + protected function modifyStreamingCallable(callable &$callable) + { + // Do nothing - this method exists to allow callable modification by partial veneers. + } + /** + * @internal + */ + private function isBackwardsCompatibilityMode() : bool + { + return $this->backwardsCompatibilityMode ?? ($this->backwardsCompatibilityMode = \substr(__CLASS__, -11) === 'GapicClient'); + } +} diff --git a/vendor/Gcp/google/gax/src/GrpcSupportTrait.php b/vendor/Gcp/google/gax/src/GrpcSupportTrait.php new file mode 100644 index 00000000..93d59f09 --- /dev/null +++ b/vendor/Gcp/google/gax/src/GrpcSupportTrait.php @@ -0,0 +1,58 @@ +nextHandler = $nextHandler; + $this->credentialsWrapper = $credentialsWrapper; + } + public function __invoke(Call $call, array $options) + { + $next = $this->nextHandler; + return $next($call, $options + ['credentialsWrapper' => $this->credentialsWrapper]); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/FixedHeaderMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/FixedHeaderMiddleware.php new file mode 100644 index 00000000..33859790 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/FixedHeaderMiddleware.php @@ -0,0 +1,63 @@ +nextHandler = $nextHandler; + $this->headers = $headers; + $this->overrideUserHeaders = $overrideUserHeaders; + } + public function __invoke(Call $call, array $options) + { + $userHeaders = $options['headers'] ?? []; + if ($this->overrideUserHeaders) { + $options['headers'] = $this->headers + $userHeaders; + } else { + $options['headers'] = $userHeaders + $this->headers; + } + $next = $this->nextHandler; + return $next($call, $options); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/MiddlewareInterface.php b/vendor/Gcp/google/gax/src/Middleware/MiddlewareInterface.php new file mode 100644 index 00000000..7c444af5 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/MiddlewareInterface.php @@ -0,0 +1,90 @@ +handler = $handler; + * } + * public function __invoke(Call $call, array $options) + * { + * echo "Logging info about the call: " . $call->getMethod(); + * return ($this->handler)($call, $options); + * } + * } + * ``` + * + * Next, add the middleware to any class implementing `GapicClientTrait` by passing in a + * callable which returns the new middleware: + * + * ``` + * $client = new ExampleGoogleApiServiceClient(); + * $client->addMiddleware(function (MiddlewareInterface $handler) { + * return new MyTestMiddleware($handler); + * }); + * ``` + */ +interface MiddlewareInterface +{ + /** + * Modify or observe the API call request and response. + * The returned value must include the result of the next MiddlewareInterface invocation in the + * chain. + * + * @param Call $call + * @param array $options + * @return PromiseInterface|ClientStream|ServerStream|BidiStream + */ + public function __invoke(Call $call, array $options); +} diff --git a/vendor/Gcp/google/gax/src/Middleware/OperationsMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/OperationsMiddleware.php new file mode 100644 index 00000000..8da3fef7 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/OperationsMiddleware.php @@ -0,0 +1,64 @@ +nextHandler = $nextHandler; + $this->operationsClient = $operationsClient; + $this->descriptor = $descriptor; + } + public function __invoke(Call $call, array $options) + { + $next = $this->nextHandler; + return $next($call, $options)->then(function (Message $response) { + $options = $this->descriptor + ['lastProtoResponse' => $response]; + $operationNameMethod = $options['operationNameMethod'] ?? 'getName'; + $operationName = \call_user_func([$response, $operationNameMethod]); + return new OperationResponse($operationName, $this->operationsClient, $options); + }); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/OptionsFilterMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/OptionsFilterMiddleware.php new file mode 100644 index 00000000..c5ae3ecd --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/OptionsFilterMiddleware.php @@ -0,0 +1,58 @@ +nextHandler = $nextHandler; + $this->permittedOptions = $permittedOptions; + } + public function __invoke(Call $call, array $options) + { + $next = $this->nextHandler; + $filteredOptions = $this->pluckArray($this->permittedOptions, $options); + return $next($call, $filteredOptions); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/PagedMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/PagedMiddleware.php new file mode 100644 index 00000000..729862d0 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/PagedMiddleware.php @@ -0,0 +1,67 @@ +nextHandler = $nextHandler; + $this->descriptor = $descriptor; + } + public function __invoke(Call $call, array $options) + { + $next = $this->nextHandler; + $descriptor = $this->descriptor; + return $next($call, $options)->then(function (Message $response) use($call, $next, $options, $descriptor) { + $page = new Page($call, $options, $next, $descriptor, $response); + return new PagedListResponse($page); + }); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/ResponseMetadataMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/ResponseMetadataMiddleware.php new file mode 100644 index 00000000..5d423e98 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/ResponseMetadataMiddleware.php @@ -0,0 +1,67 @@ +nextHandler = $nextHandler; + } + public function __invoke(Call $call, array $options) + { + $metadataReceiver = new Promise(); + $options['metadataCallback'] = function ($metadata) use($metadataReceiver) { + $metadataReceiver->resolve($metadata); + }; + $next = $this->nextHandler; + return $next($call, $options)->then(function ($response) use($metadataReceiver) { + if ($metadataReceiver->getState() === PromiseInterface::FULFILLED) { + return [$response, $metadataReceiver->wait()]; + } else { + return [$response, []]; + } + }); + } +} diff --git a/vendor/Gcp/google/gax/src/Middleware/RetryMiddleware.php b/vendor/Gcp/google/gax/src/Middleware/RetryMiddleware.php new file mode 100644 index 00000000..02d0e8bc --- /dev/null +++ b/vendor/Gcp/google/gax/src/Middleware/RetryMiddleware.php @@ -0,0 +1,150 @@ +nextHandler = $nextHandler; + $this->retrySettings = $retrySettings; + $this->deadlineMs = $deadlineMs; + $this->retryAttempts = $retryAttempts; + } + /** + * @param Call $call + * @param array $options + * + * @return PromiseInterface + */ + public function __invoke(Call $call, array $options) + { + $nextHandler = $this->nextHandler; + if (!isset($options['timeoutMillis'])) { + // default to "noRetriesRpcTimeoutMillis" when retries are disabled, otherwise use "initialRpcTimeoutMillis" + if (!$this->retrySettings->retriesEnabled() && $this->retrySettings->getNoRetriesRpcTimeoutMillis() > 0) { + $options['timeoutMillis'] = $this->retrySettings->getNoRetriesRpcTimeoutMillis(); + } elseif ($this->retrySettings->getInitialRpcTimeoutMillis() > 0) { + $options['timeoutMillis'] = $this->retrySettings->getInitialRpcTimeoutMillis(); + } + } + // Call the handler immediately if retry settings are disabled. + if (!$this->retrySettings->retriesEnabled()) { + return $nextHandler($call, $options); + } + return $nextHandler($call, $options)->then(null, function ($e) use($call, $options) { + $retryFunction = $this->getRetryFunction(); + // If the number of retries has surpassed the max allowed retries + // then throw the exception as we normally would. + // If the maxRetries is set to 0, then we don't check this condition. + if (0 !== $this->retrySettings->getMaxRetries() && $this->retryAttempts >= $this->retrySettings->getMaxRetries()) { + throw $e; + } + // If the retry function returns false then throw the + // exception as we normally would. + if (!$retryFunction($e, $options)) { + throw $e; + } + // Retry function returned true, so we attempt another retry + return $this->retry($call, $options, $e->getStatus()); + }); + } + /** + * @param Call $call + * @param array $options + * @param string $status + * + * @return PromiseInterface + * @throws ApiException + */ + private function retry(Call $call, array $options, string $status) + { + $delayMult = $this->retrySettings->getRetryDelayMultiplier(); + $maxDelayMs = $this->retrySettings->getMaxRetryDelayMillis(); + $timeoutMult = $this->retrySettings->getRpcTimeoutMultiplier(); + $maxTimeoutMs = $this->retrySettings->getMaxRpcTimeoutMillis(); + $totalTimeoutMs = $this->retrySettings->getTotalTimeoutMillis(); + $delayMs = $this->retrySettings->getInitialRetryDelayMillis(); + $timeoutMs = $options['timeoutMillis']; + $currentTimeMs = $this->getCurrentTimeMs(); + $deadlineMs = $this->deadlineMs ?: $currentTimeMs + $totalTimeoutMs; + if ($currentTimeMs >= $deadlineMs) { + throw new ApiException('Retry total timeout exceeded.', \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Code::DEADLINE_EXCEEDED, ApiStatus::DEADLINE_EXCEEDED); + } + $delayMs = \min($delayMs * $delayMult, $maxDelayMs); + $timeoutMs = (int) \min($timeoutMs * $timeoutMult, $maxTimeoutMs, $deadlineMs - $this->getCurrentTimeMs()); + $nextHandler = new RetryMiddleware($this->nextHandler, $this->retrySettings->with(['initialRetryDelayMillis' => $delayMs]), $deadlineMs, $this->retryAttempts + 1); + // Set the timeout for the call + $options['timeoutMillis'] = $timeoutMs; + return $nextHandler($call, $options); + } + protected function getCurrentTimeMs() + { + return \microtime(\true) * 1000.0; + } + /** + * This is the default retry behaviour. + */ + private function getRetryFunction() + { + return $this->retrySettings->getRetryFunction() ?? function (\Throwable $e, array $options) : bool { + // This is the default retry behaviour, i.e. we don't retry an ApiException + // and for other exception types, we only retry when the error code is in + // the list of retryable error codes. + if (!$e instanceof ApiException) { + return \false; + } + if (!\in_array($e->getStatus(), $this->retrySettings->getRetryableCodes())) { + return \false; + } + return \true; + }; + } +} diff --git a/vendor/Gcp/google/gax/src/OperationResponse.php b/vendor/Gcp/google/gax/src/OperationResponse.php new file mode 100644 index 00000000..d0117625 --- /dev/null +++ b/vendor/Gcp/google/gax/src/OperationResponse.php @@ -0,0 +1,414 @@ + self::DEFAULT_POLLING_INTERVAL, 'pollDelayMultiplier' => self::DEFAULT_POLLING_MULTIPLIER, 'maxPollDelayMillis' => self::DEFAULT_MAX_POLLING_INTERVAL, 'totalPollTimeoutMillis' => self::DEFAULT_MAX_POLLING_DURATION]; + private ?object $lastProtoResponse; + private bool $deleted = \false; + private array $additionalArgs; + private string $getOperationMethod; + private ?string $cancelOperationMethod; + private ?string $deleteOperationMethod; + private string $operationStatusMethod; + /** @var mixed */ + private $operationStatusDoneValue; + private ?string $operationErrorCodeMethod; + private ?string $operationErrorMessageMethod; + /** + * OperationResponse constructor. + * + * @param string $operationName + * @param object $operationsClient + * @param array $options { + * Optional. Options for configuring the operation response object. + * + * @type string $operationReturnType The return type of the longrunning operation. + * @type string $metadataReturnType The type of the metadata returned in the operation response. + * @type int $initialPollDelayMillis The initial polling interval to use, in milliseconds. + * @type int $pollDelayMultiplier Multiplier applied to the polling interval on each retry. + * @type int $maxPollDelayMillis The maximum polling interval to use, in milliseconds. + * @type int $totalPollTimeoutMillis The maximum amount of time to continue polling. + * @type object $lastProtoResponse A response already received from the server. + * @type string $getOperationMethod The method on $operationsClient to get the operation. + * @type string $cancelOperationMethod The method on $operationsClient to cancel the operation. + * @type string $deleteOperationMethod The method on $operationsClient to delete the operation. + * @type string $operationStatusMethod The method on the operation to get the status. + * @type string $operationStatusDoneValue The method on the operation to determine if the status is done. + * @type array $additionalOperationArguments Additional arguments to pass to $operationsClient methods. + * @type string $operationErrorCodeMethod The method on the operation to get the error code + * @type string $operationErrorMessageMethod The method on the operation to get the error status + * } + */ + public function __construct(string $operationName, $operationsClient, array $options = []) + { + $this->operationName = $operationName; + $this->operationsClient = $operationsClient; + $options += ['operationReturnType' => null, 'metadataReturnType' => null, 'lastProtoResponse' => null, 'getOperationMethod' => 'getOperation', 'cancelOperationMethod' => 'cancelOperation', 'deleteOperationMethod' => 'deleteOperation', 'operationStatusMethod' => 'getDone', 'operationStatusDoneValue' => \true, 'additionalOperationArguments' => [], 'operationErrorCodeMethod' => null, 'operationErrorMessageMethod' => null]; + $this->operationReturnType = $options['operationReturnType']; + $this->metadataReturnType = $options['metadataReturnType']; + $this->lastProtoResponse = $options['lastProtoResponse']; + $this->getOperationMethod = $options['getOperationMethod']; + $this->cancelOperationMethod = $options['cancelOperationMethod']; + $this->deleteOperationMethod = $options['deleteOperationMethod']; + $this->additionalArgs = $options['additionalOperationArguments']; + $this->operationStatusMethod = $options['operationStatusMethod']; + $this->operationStatusDoneValue = $options['operationStatusDoneValue']; + $this->operationErrorCodeMethod = $options['operationErrorCodeMethod']; + $this->operationErrorMessageMethod = $options['operationErrorMessageMethod']; + if (isset($options['initialPollDelayMillis'])) { + $this->defaultPollSettings['initialPollDelayMillis'] = $options['initialPollDelayMillis']; + } + if (isset($options['pollDelayMultiplier'])) { + $this->defaultPollSettings['pollDelayMultiplier'] = $options['pollDelayMultiplier']; + } + if (isset($options['maxPollDelayMillis'])) { + $this->defaultPollSettings['maxPollDelayMillis'] = $options['maxPollDelayMillis']; + } + if (isset($options['totalPollTimeoutMillis'])) { + $this->defaultPollSettings['totalPollTimeoutMillis'] = $options['totalPollTimeoutMillis']; + } + } + /** + * Check whether the operation has completed. + * + * @return bool + */ + public function isDone() + { + if (!$this->hasProtoResponse()) { + return \false; + } + $status = \call_user_func([$this->lastProtoResponse, $this->operationStatusMethod]); + if (\is_null($status)) { + return \false; + } + return $status === $this->operationStatusDoneValue; + } + /** + * Check whether the operation completed successfully. If the operation is not complete, or if the operation + * failed, return false. + * + * @return bool + */ + public function operationSucceeded() + { + if (!$this->hasProtoResponse()) { + return \false; + } + if (!$this->canHaveResult()) { + // For Operations which do not have a result, we consider a successful + // operation when the operation has completed without errors. + return $this->isDone() && !$this->hasErrors(); + } + return !\is_null($this->getResult()); + } + /** + * Check whether the operation failed. If the operation is not complete, or if the operation + * succeeded, return false. + * + * @return bool + */ + public function operationFailed() + { + return $this->hasErrors(); + } + /** + * Get the formatted name of the operation + * + * @return string The formatted name of the operation + */ + public function getName() + { + return $this->operationName; + } + /** + * Poll the server in a loop until the operation is complete. + * + * Return true if the operation completed, otherwise return false. If the + * $options['totalPollTimeoutMillis'] setting is not set (or set <= 0) then + * pollUntilComplete will continue polling until the operation completes, + * and therefore will always return true. + * + * @param array $options { + * Options for configuring the polling behaviour. + * + * @type int $initialPollDelayMillis The initial polling interval to use, in milliseconds. + * @type int $pollDelayMultiplier Multiplier applied to the polling interval on each retry. + * @type int $maxPollDelayMillis The maximum polling interval to use, in milliseconds. + * @type int $totalPollTimeoutMillis The maximum amount of time to continue polling, in milliseconds. + * } + * @throws ApiException If an API call fails. + * @throws ValidationException + * @return bool Indicates if the operation completed. + */ + public function pollUntilComplete(array $options = []) + { + if ($this->isDone()) { + return \true; + } + $pollSettings = \array_merge($this->defaultPollSettings, $options); + return $this->poll(function () { + $this->reload(); + return $this->isDone(); + }, $pollSettings); + } + /** + * Reload the status of the operation with a request to the service. + * + * @throws ApiException If the API call fails. + * @throws ValidationException If called on a deleted operation. + */ + public function reload() + { + if ($this->deleted) { + throw new ValidationException("Cannot call reload() on a deleted operation"); + } + $this->lastProtoResponse = $this->operationsCall($this->getOperationMethod, $this->getName(), $this->additionalArgs); + } + /** + * Return the result of the operation. If operationSucceeded() is false, return null. + * + * @return mixed|null The result of the operation, or null if operationSucceeded() is false + */ + public function getResult() + { + if (!$this->hasProtoResponse()) { + return null; + } + if (!$this->canHaveResult()) { + return null; + } + if (!$this->isDone()) { + return null; + } + /** @var Any|null $anyResponse */ + $anyResponse = $this->lastProtoResponse->getResponse(); + if (\is_null($anyResponse)) { + return null; + } + if (\is_null($this->operationReturnType)) { + return $anyResponse; + } + $operationReturnType = $this->operationReturnType; + /** @var Message $response */ + $response = new $operationReturnType(); + $response->mergeFromString($anyResponse->getValue()); + return $response; + } + /** + * If the operation failed, return the status. If operationFailed() is false, return null. + * + * @return Status|null The status of the operation in case of failure, or null if + * operationFailed() is false. + */ + public function getError() + { + if (!$this->hasProtoResponse() || !$this->isDone()) { + return null; + } + if ($this->operationErrorCodeMethod || $this->operationErrorMessageMethod) { + $errorCode = $this->operationErrorCodeMethod ? \call_user_func([$this->lastProtoResponse, $this->operationErrorCodeMethod]) : null; + $errorMessage = $this->operationErrorMessageMethod ? \call_user_func([$this->lastProtoResponse, $this->operationErrorMessageMethod]) : null; + return (new Status())->setCode(ApiStatus::rpcCodeFromHttpStatusCode($errorCode))->setMessage($errorMessage); + } + if (\method_exists($this->lastProtoResponse, 'getError')) { + return $this->lastProtoResponse->getError(); + } + return null; + } + /** + * Get an array containing the values of 'operationReturnType', 'metadataReturnType', and + * the polling options `initialPollDelayMillis`, `pollDelayMultiplier`, `maxPollDelayMillis`, + * and `totalPollTimeoutMillis`. The array can be passed as the $options argument to the + * constructor when creating another OperationResponse object. + * + * @return array + */ + public function getDescriptorOptions() + { + return ['operationReturnType' => $this->operationReturnType, 'metadataReturnType' => $this->metadataReturnType] + $this->defaultPollSettings; + } + /** + * @return Operation|mixed|null The last Operation object received from the server. + */ + public function getLastProtoResponse() + { + return $this->lastProtoResponse; + } + /** + * @return object The OperationsClient object used to make + * requests to the operations API. + */ + public function getOperationsClient() + { + return $this->operationsClient; + } + /** + * Cancel the long-running operation. + * + * For operations of type Google\LongRunning\Operation, this method starts + * asynchronous cancellation on a long-running operation. The server + * makes a best effort to cancel the operation, but success is not + * guaranteed. If the server doesn't support this method, it will throw an + * ApiException with code \Google\Rpc\Code::UNIMPLEMENTED. Clients can continue + * to use reload and pollUntilComplete methods to check whether the cancellation + * succeeded or whether the operation completed despite cancellation. + * On successful cancellation, the operation is not deleted; instead, it becomes + * an operation with a getError() value with a \Google\Rpc\Status code of 1, + * corresponding to \Google\Rpc\Code::CANCELLED. + * + * @throws ApiException If the API call fails. + * @throws LogicException If the API call method has not been configured + */ + public function cancel() + { + if (\is_null($this->cancelOperationMethod)) { + throw new LogicException('The cancel operation is not supported by this API'); + } + $this->operationsCall($this->cancelOperationMethod, $this->getName(), $this->additionalArgs); + } + /** + * Delete the long-running operation. + * + * For operations of type Google\LongRunning\Operation, this method + * indicates that the client is no longer interested in the operation result. + * It does not cancel the operation. If the server doesn't support this method, + * it will throw an ApiException with code \Google\Rpc\Code::UNIMPLEMENTED. + * + * @throws ApiException If the API call fails. + * @throws LogicException If the API call method has not been configured + */ + public function delete() + { + if (\is_null($this->deleteOperationMethod)) { + throw new LogicException('The delete operation is not supported by this API'); + } + $this->operationsCall($this->deleteOperationMethod, $this->getName(), $this->additionalArgs); + $this->deleted = \true; + } + /** + * Get the metadata returned with the last proto response. If a metadata type was provided, then + * the return value will be of that type - otherwise, the return value will be of type Any. If + * no metadata object is available, returns null. + * + * @return mixed The metadata returned from the server in the last response. + */ + public function getMetadata() + { + if (!$this->hasProtoResponse()) { + return null; + } + if (!\method_exists($this->lastProtoResponse, 'getMetadata')) { + // The call to getMetadata is only for OnePlatform LROs, and is not + // supported by other LRO GAPIC clients (e.g. Compute) + return null; + } + /** @var Any|null $any */ + $any = $this->lastProtoResponse->getMetadata(); + if (\is_null($this->metadataReturnType)) { + return $any; + } + if (\is_null($any)) { + return null; + } + // @TODO: This is probably not doing anything and can be removed in the next release. + if (\is_null($any->getValue())) { + return null; + } + $metadataReturnType = $this->metadataReturnType; + /** @var Message $metadata */ + $metadata = new $metadataReturnType(); + $metadata->mergeFromString($any->getValue()); + return $metadata; + } + private function operationsCall($method, $name, array $additionalArgs) + { + $args = \array_merge([$name], $additionalArgs); + return \call_user_func_array([$this->operationsClient, $method], $args); + } + private function canHaveResult() + { + // The call to getResponse is only for OnePlatform LROs, and is not + // supported by other LRO GAPIC clients (e.g. Compute) + return \method_exists($this->lastProtoResponse, 'getResponse'); + } + private function hasErrors() + { + if (!$this->hasProtoResponse()) { + return \false; + } + if (\method_exists($this->lastProtoResponse, 'getError')) { + return !empty($this->lastProtoResponse->getError()); + } + if ($this->operationErrorCodeMethod) { + $errorCode = \call_user_func([$this->lastProtoResponse, $this->operationErrorCodeMethod]); + return !empty($errorCode); + } + // This should never happen unless an API is misconfigured + throw new LogicException('Unable to determine operation error status for this service'); + } + private function hasProtoResponse() + { + return !\is_null($this->lastProtoResponse); + } +} diff --git a/vendor/Gcp/google/gax/src/Options/CallOptions.php b/vendor/Gcp/google/gax/src/Options/CallOptions.php new file mode 100644 index 00000000..8b0e843b --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/CallOptions.php @@ -0,0 +1,138 @@ +fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setHeaders($arr['headers'] ?? []); + $this->setTimeoutMillis($arr['timeoutMillis'] ?? null); + $this->setTransportOptions($arr['transportOptions'] ?? []); + $this->setRetrySettings($arr['retrySettings'] ?? null); + } + /** + * @param array $headers + */ + public function setHeaders(array $headers) + { + $this->headers = $headers; + } + /** + * @param int|null $timeoutMillis + */ + public function setTimeoutMillis(?int $timeoutMillis) + { + $this->timeoutMillis = $timeoutMillis; + } + /** + * @param array $transportOptions { + * Transport-specific call-time options. + * + * @type array $grpcOptions + * Key-value pairs for gRPC-specific options passed as the `$options` argument to {@see \Grpc\BaseStub} + * request methods. Current options are `call_credentials_callback` and `timeout`. + * **NOTE**: This library sets `call_credentials_callback` using {@see CredentialsWrapper}, and `timeout` + * using the `timeoutMillis` call option, so these options are not very useful. + * @type array $grpcFallbackOptions + * Key-value pairs for gRPC fallback specific options passed as the `$options` argument to the + * `$httpHandler` callable. By default these are passed to {@see \GuzzleHttp\Client} as request options. + * See {@link https://docs.guzzlephp.org/en/stable/request-options.html}. + * @type array $restOptions + * Key-value pairs for REST-specific options passed as the `$options` argument to the `$httpHandler` + * callable. By default these are passed to {@see \GuzzleHttp\Client} as request options. + * See {@link https://docs.guzzlephp.org/en/stable/request-options.html}. + * } + */ + public function setTransportOptions(array $transportOptions) + { + $this->transportOptions = $transportOptions; + } + /** + * @deprecated use CallOptions::setTransportOptions + */ + public function setTransportSpecificOptions(array $transportSpecificOptions) + { + $this->setTransportOptions($transportSpecificOptions); + } + /** + * @param RetrySettings|array|null $retrySettings + */ + public function setRetrySettings($retrySettings) + { + $this->retrySettings = $retrySettings; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/ClientOptions.php b/vendor/Gcp/google/gax/src/Options/ClientOptions.php new file mode 100644 index 00000000..74335075 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/ClientOptions.php @@ -0,0 +1,284 @@ + '/path/to/my/credentials.json' + * ]); + * $secretManager = new SecretManagerClient($options->toArray()); + * ``` + * + * Note: It's possible to pass an associative array to the API clients as well, + * as ClientOptions will still be used internally for validation. + */ +class ClientOptions implements ArrayAccess +{ + use OptionsTrait; + private ?string $apiEndpoint; + private bool $disableRetries; + private array $clientConfig; + /** @var string|array|FetchAuthTokenInterface|CredentialsWrapper|null */ + private $credentials; + private array $credentialsConfig; + /** @var string|TransportInterface|null $transport */ + private $transport; + private TransportOptions $transportConfig; + private ?string $versionFile; + private ?string $descriptorsConfigPath; + private ?string $serviceName; + private ?string $libName; + private ?string $libVersion; + private ?string $gapicVersion; + private ?Closure $clientCertSource; + private ?string $universeDomain; + /** + * @param array $options { + * @type string $apiEndpoint + * The address of the API remote host, for example "example.googleapis.com. May also + * include the port, for example "example.googleapis.com:443" + * @type bool $disableRetries + * Determines whether or not retries defined by the client configuration should be + * disabled. Defaults to `false`. + * @type string|array $clientConfig + * Client method configuration, including retry settings. This option can be either a + * path to a JSON file, or a PHP array containing the decoded JSON data. + * By default this settings points to the default client config file, which is provided + * in the resources folder. + * @type string|array|FetchAuthTokenInterface|CredentialsWrapper $credentials + * The credentials to be used by the client to authorize API calls. This option + * accepts either a path to a credentials file, or a decoded credentials file as a + * PHP array. + * *Advanced usage*: In addition, this option can also accept a pre-constructed + * \Google\Auth\FetchAuthTokenInterface object or \Google\ApiCore\CredentialsWrapper + * object. Note that when one of these objects are provided, any settings in + * $authConfig will be ignored. + * @type array $credentialsConfig + * Options used to configure credentials, including auth token caching, for the client. + * For a full list of supporting configuration options, see + * \Google\ApiCore\CredentialsWrapper::build. + * @type string|TransportInterface|null $transport + * The transport used for executing network requests. May be either the string `rest`, + * `grpc`, or 'grpc-fallback'. Defaults to `grpc` if gRPC support is detected on the system. + * *Advanced usage*: Additionally, it is possible to pass in an already instantiated + * TransportInterface object. Note that when this objects is provided, any settings in + * $transportConfig, and any `$apiEndpoint` setting, will be ignored. + * @type array $transportConfig + * Configuration options that will be used to construct the transport. Options for + * each supported transport type should be passed in a key for that transport. For + * example: + * $transportConfig = [ + * 'grpc' => [...], + * 'rest' => [...], + * 'grpc-fallback' => [...], + * ]; + * See the GrpcTransport::build and RestTransport::build + * methods for the supported options. + * @type string $versionFile + * The path to a file which contains the current version of the client. + * @type string $descriptorsConfigPath + * The path to a descriptor configuration file. + * @type string $serviceName + * The name of the service. + * @type string $libName + * The name of the client application. + * @type string $libVersion + * The version of the client application. + * @type string $gapicVersion + * The code generator version of the GAPIC library. + * @type callable $clientCertSource + * A callable which returns the client cert as a string. + * @type string $universeDomain + * The default service domain for a given Cloud universe. + * } + */ + public function __construct(array $options) + { + $this->fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setApiEndpoint($arr['apiEndpoint'] ?? null); + $this->setDisableRetries($arr['disableRetries'] ?? \false); + $this->setClientConfig($arr['clientConfig'] ?? []); + $this->setCredentials($arr['credentials'] ?? null); + $this->setCredentialsConfig($arr['credentialsConfig'] ?? []); + $this->setTransport($arr['transport'] ?? null); + $this->setTransportConfig(new TransportOptions($arr['transportConfig'] ?? [])); + $this->setVersionFile($arr['versionFile'] ?? null); + $this->setDescriptorsConfigPath($arr['descriptorsConfigPath'] ?? null); + $this->setServiceName($arr['serviceName'] ?? null); + $this->setLibName($arr['libName'] ?? null); + $this->setLibVersion($arr['libVersion'] ?? null); + $this->setGapicVersion($arr['gapicVersion'] ?? null); + $this->setClientCertSource($arr['clientCertSource'] ?? null); + $this->setUniverseDomain($arr['universeDomain'] ?? null); + } + /** + * @param ?string $apiEndpoint + */ + public function setApiEndpoint(?string $apiEndpoint) : void + { + $this->apiEndpoint = $apiEndpoint; + } + /** + * @param bool $disableRetries + */ + public function setDisableRetries(bool $disableRetries) : void + { + $this->disableRetries = $disableRetries; + } + /** + * @param string|array $clientConfig + * @throws InvalidArgumentException + */ + public function setClientConfig($clientConfig) : void + { + if (\is_string($clientConfig)) { + $this->clientConfig = \json_decode(\file_get_contents($clientConfig), \true); + } elseif (\is_array($clientConfig)) { + $this->clientConfig = $clientConfig; + } else { + throw new InvalidArgumentException('Invalid client config'); + } + } + /** + * @param string|array|FetchAuthTokenInterface|CredentialsWrapper|null $credentials + */ + public function setCredentials($credentials) : void + { + $this->credentials = $credentials; + } + /** + * @param array $credentialsConfig + */ + public function setCredentialsConfig(array $credentialsConfig) : void + { + $this->credentialsConfig = $credentialsConfig; + } + /** + * @param string|TransportInterface|null $transport + */ + public function setTransport($transport) : void + { + $this->transport = $transport; + } + /** + * @param TransportOptions $transportConfig + */ + public function setTransportConfig(TransportOptions $transportConfig) : void + { + $this->transportConfig = $transportConfig; + } + /** + * @param ?string $versionFile + */ + public function setVersionFile(?string $versionFile) : void + { + $this->versionFile = $versionFile; + } + /** + * @param ?string $descriptorsConfigPath + */ + private function setDescriptorsConfigPath(?string $descriptorsConfigPath) + { + if (!\is_null($descriptorsConfigPath)) { + self::validateFileExists($descriptorsConfigPath); + } + $this->descriptorsConfigPath = $descriptorsConfigPath; + } + /** + * @param ?string $serviceName + */ + public function setServiceName(?string $serviceName) : void + { + $this->serviceName = $serviceName; + } + /** + * @param ?string $libName + */ + public function setLibName(?string $libName) : void + { + $this->libName = $libName; + } + /** + * @param ?string $libVersion + */ + public function setLibVersion(?string $libVersion) : void + { + $this->libVersion = $libVersion; + } + /** + * @param ?string $gapicVersion + */ + public function setGapicVersion(?string $gapicVersion) : void + { + $this->gapicVersion = $gapicVersion; + } + /** + * @param ?callable $clientCertSource + */ + public function setClientCertSource(?callable $clientCertSource) + { + if (!\is_null($clientCertSource)) { + $clientCertSource = Closure::fromCallable($clientCertSource); + } + $this->clientCertSource = $clientCertSource; + } + /** + * @param string $universeDomain + */ + public function setUniverseDomain(?string $universeDomain) + { + $this->universeDomain = $universeDomain; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/OptionsTrait.php b/vendor/Gcp/google/gax/src/Options/OptionsTrait.php new file mode 100644 index 00000000..c93d92a6 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/OptionsTrait.php @@ -0,0 +1,84 @@ +{$offset}); + } + #[\ReturnTypeWillChange] + public function offsetGet($offset) + { + return $this->{$offset}; + } + /** + * @throws BadMethodCallException + */ + public function offsetSet($offset, $value) : void + { + throw new BadMethodCallException('Cannot set options through array access. Use the setters instead'); + } + /** + * @throws BadMethodCallException + */ + public function offsetUnset($offset) : void + { + throw new BadMethodCallException('Cannot unset options through array access. Use the setters instead'); + } + public function toArray() : array + { + $arr = []; + foreach (\get_object_vars($this) as $key => $value) { + $arr[$key] = $value; + } + return $arr; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/TransportOptions.php b/vendor/Gcp/google/gax/src/Options/TransportOptions.php new file mode 100644 index 00000000..4ca13171 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/TransportOptions.php @@ -0,0 +1,81 @@ +fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setGrpc(new GrpcTransportOptions($arr['grpc'] ?? [])); + $this->setGrpcFallback(new GrpcFallbackTransportOptions($arr['grpc-fallback'] ?? [])); + $this->setRest(new RestTransportOptions($arr['rest'] ?? [])); + } + public function setGrpc(GrpcTransportOptions $grpc) : void + { + $this->grpc = $grpc; + } + public function setGrpcFallback(GrpcFallbackTransportOptions $grpcFallback) : void + { + $this->grpcFallback = $grpcFallback; + } + public function setRest(RestTransportOptions $rest) : void + { + $this->rest = $rest; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php b/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php new file mode 100644 index 00000000..1a1ce7fa --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcFallbackTransportOptions.php @@ -0,0 +1,88 @@ +fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setClientCertSource($arr['clientCertSource'] ?? null); + $this->setHttpHandler($arr['httpHandler'] ?? null); + } + public function setHttpHandler(?callable $httpHandler) + { + if (!\is_null($httpHandler)) { + $httpHandler = Closure::fromCallable($httpHandler); + } + $this->httpHandler = $httpHandler; + } + /** + * @param ?callable $clientCertSource + */ + public function setClientCertSource(?callable $clientCertSource) + { + if (!\is_null($clientCertSource)) { + $clientCertSource = Closure::fromCallable($clientCertSource); + } + $this->clientCertSource = $clientCertSource; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php b/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php new file mode 100644 index 00000000..1dd6448e --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/TransportOptions/GrpcTransportOptions.php @@ -0,0 +1,120 @@ +fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setStubOpts($arr['stubOpts'] ?? []); + $this->setChannel($arr['channel'] ?? null); + $this->setInterceptors($arr['interceptors'] ?? []); + $this->setClientCertSource($arr['clientCertSource'] ?? null); + } + /** + * @param array $stubOpts + */ + public function setStubOpts(array $stubOpts) + { + $this->stubOpts = $stubOpts; + } + /** + * @param ?Channel $channel + */ + public function setChannel(?Channel $channel) + { + $this->channel = $channel; + } + /** + * @param Interceptor[]|UnaryInterceptorInterface[] $interceptors + */ + public function setInterceptors(array $interceptors) + { + $this->interceptors = $interceptors; + } + /** + * @param ?callable $clientCertSource + */ + public function setClientCertSource(?callable $clientCertSource) + { + if (!\is_null($clientCertSource)) { + $clientCertSource = Closure::fromCallable($clientCertSource); + } + $this->clientCertSource = $clientCertSource; + } +} diff --git a/vendor/Gcp/google/gax/src/Options/TransportOptions/RestTransportOptions.php b/vendor/Gcp/google/gax/src/Options/TransportOptions/RestTransportOptions.php new file mode 100644 index 00000000..7db40deb --- /dev/null +++ b/vendor/Gcp/google/gax/src/Options/TransportOptions/RestTransportOptions.php @@ -0,0 +1,102 @@ +fromArray($options); + } + /** + * Sets the array of options as class properites. + * + * @param array $arr See the constructor for the list of supported options. + */ + private function fromArray(array $arr) : void + { + $this->setHttpHandler($arr['httpHandler'] ?? null); + $this->setClientCertSource($arr['clientCertSource'] ?? null); + $this->setRestClientConfigPath($arr['restClientConfigPath'] ?? null); + } + /** + * @param ?callable $httpHandler + */ + public function setHttpHandler(?callable $httpHandler) + { + if (!\is_null($httpHandler)) { + $httpHandler = Closure::fromCallable($httpHandler); + } + $this->httpHandler = $httpHandler; + } + /** + * @param ?callable $clientCertSource + */ + public function setClientCertSource(?callable $clientCertSource) + { + if (!\is_null($clientCertSource)) { + $clientCertSource = Closure::fromCallable($clientCertSource); + } + $this->clientCertSource = $clientCertSource; + } + /** + * @param ?string $restClientConfigPath + */ + public function setRestClientConfigPath(?string $restClientConfigPath) + { + $this->restClientConfigPath = $restClientConfigPath; + } +} diff --git a/vendor/Gcp/google/gax/src/Page.php b/vendor/Gcp/google/gax/src/Page.php new file mode 100644 index 00000000..0113330b --- /dev/null +++ b/vendor/Gcp/google/gax/src/Page.php @@ -0,0 +1,220 @@ +call = $call; + $this->options = $options; + $this->callable = $callable; + $this->pageStreamingDescriptor = $pageStreamingDescriptor; + $this->response = $response; + $requestPageTokenGetMethod = $this->pageStreamingDescriptor->getRequestPageTokenGetMethod(); + $this->pageToken = $this->call->getMessage()->{$requestPageTokenGetMethod}(); + } + /** + * Returns true if there are more pages that can be retrieved from the + * API. + * + * @return bool + */ + public function hasNextPage() + { + return \strcmp($this->getNextPageToken(), Page::FINAL_PAGE_TOKEN) != 0; + } + /** + * Returns the next page token from the response. + * + * @return string + */ + public function getNextPageToken() + { + $responsePageTokenGetMethod = $this->pageStreamingDescriptor->getResponsePageTokenGetMethod(); + return $this->getResponseObject()->{$responsePageTokenGetMethod}(); + } + /** + * Retrieves the next Page object using the next page token. + * + * @param int|null $pageSize + * @throws ValidationException if there are no pages remaining, or if pageSize is supplied but + * is not supported by the API + * @throws ApiException if the call to fetch the next page fails. + * @return Page + */ + public function getNextPage(int $pageSize = null) + { + if (!$this->hasNextPage()) { + throw new ValidationException('Could not complete getNextPage operation: ' . 'there are no more pages to retrieve.'); + } + $oldRequest = $this->getRequestObject(); + $requestClass = \get_class($oldRequest); + $newRequest = new $requestClass(); + $newRequest->mergeFrom($oldRequest); + $requestPageTokenSetMethod = $this->pageStreamingDescriptor->getRequestPageTokenSetMethod(); + $newRequest->{$requestPageTokenSetMethod}($this->getNextPageToken()); + if (isset($pageSize)) { + if (!$this->pageStreamingDescriptor->requestHasPageSizeField()) { + throw new ValidationException('pageSize argument was defined, but the method does not ' . 'support a page size parameter in the optional array argument'); + } + $requestPageSizeSetMethod = $this->pageStreamingDescriptor->getRequestPageSizeSetMethod(); + $newRequest->{$requestPageSizeSetMethod}($pageSize); + } + $this->call = $this->call->withMessage($newRequest); + $callable = $this->callable; + $response = $callable($this->call, $this->options)->wait(); + return new Page($this->call, $this->options, $this->callable, $this->pageStreamingDescriptor, $response); + } + /** + * Return the number of elements in the response. + * + * @return int + */ + public function getPageElementCount() + { + $resourcesGetMethod = $this->pageStreamingDescriptor->getResourcesGetMethod(); + return \count($this->getResponseObject()->{$resourcesGetMethod}()); + } + /** + * Return an iterator over the elements in the response. + * + * @return Generator + */ + #[\ReturnTypeWillChange] + public function getIterator() + { + $resourcesGetMethod = $this->pageStreamingDescriptor->getResourcesGetMethod(); + $items = $this->getResponseObject()->{$resourcesGetMethod}(); + foreach ($items as $key => $element) { + if ($items instanceof MapField) { + (yield $key => $element); + } else { + (yield $element); + } + } + } + /** + * Return an iterator over Page objects, beginning with this object. + * Additional Page objects are retrieved lazily via API calls until + * all elements have been retrieved. + * + * @return Generator|array + * @throws ValidationException + * @throws ApiException + */ + public function iteratePages() + { + $currentPage = $this; + (yield $this); + while ($currentPage->hasNextPage()) { + $currentPage = $currentPage->getNextPage(); + (yield $currentPage); + } + } + /** + * Gets the request object used to generate the Page. + * + * @return mixed|Message + */ + public function getRequestObject() + { + return $this->call->getMessage(); + } + /** + * Gets the API response object. + * + * @return mixed|Message + */ + public function getResponseObject() + { + return $this->response; + } + /** + * Returns a collection of elements with a fixed size set by + * the collectionSize parameter. The collection will only contain + * fewer than collectionSize elements if there are no more + * pages to be retrieved from the server. + * + * NOTE: it is an error to call this method if an optional parameter + * to set the page size is not supported or has not been set in the + * API call that was used to create this page. It is also an error + * if the collectionSize parameter is less than the page size that + * has been set. + * + * @param int $collectionSize + * @throws ValidationException if a FixedSizeCollection of the specified size cannot be constructed + * @return FixedSizeCollection + */ + public function expandToFixedSizeCollection($collectionSize) + { + if (!$this->pageStreamingDescriptor->requestHasPageSizeField()) { + throw new ValidationException("FixedSizeCollection is not supported for this method, because " . "the method does not support an optional argument to set the " . "page size."); + } + $request = $this->getRequestObject(); + $pageSizeGetMethod = $this->pageStreamingDescriptor->getRequestPageSizeGetMethod(); + $pageSize = $request->{$pageSizeGetMethod}(); + if (\is_null($pageSize)) { + throw new ValidationException("Error while expanding Page to FixedSizeCollection: No page size " . "parameter found. The page size parameter must be set in the API " . "optional arguments array, and must be less than the collectionSize " . "parameter, in order to create a FixedSizeCollection object."); + } + if ($pageSize > $collectionSize) { + throw new ValidationException("Error while expanding Page to FixedSizeCollection: collectionSize " . "parameter is less than the page size optional argument specified in " . "the API call. collectionSize: {$collectionSize}, page size: {$pageSize}"); + } + return new FixedSizeCollection($this, $collectionSize); + } +} diff --git a/vendor/Gcp/google/gax/src/PageStreamingDescriptor.php b/vendor/Gcp/google/gax/src/PageStreamingDescriptor.php new file mode 100644 index 00000000..e4f02733 --- /dev/null +++ b/vendor/Gcp/google/gax/src/PageStreamingDescriptor.php @@ -0,0 +1,151 @@ +descriptor = $descriptor; + } + /** + * @param array $fields { + * Required. + * + * @type string $requestPageTokenField the page token field in the request object. + * @type string $responsePageTokenField the page token field in the response object. + * @type string $resourceField the resource field in the response object. + * + * Optional. + * @type string $requestPageSizeField the page size field in the request object. + * } + * @return PageStreamingDescriptor + */ + public static function createFromFields(array $fields) + { + $requestPageToken = $fields['requestPageTokenField']; + $responsePageToken = $fields['responsePageTokenField']; + $resources = $fields['resourceField']; + $descriptor = ['requestPageTokenGetMethod' => PageStreamingDescriptor::getMethod($requestPageToken), 'requestPageTokenSetMethod' => PageStreamingDescriptor::setMethod($requestPageToken), 'responsePageTokenGetMethod' => PageStreamingDescriptor::getMethod($responsePageToken), 'resourcesGetMethod' => PageStreamingDescriptor::getMethod($resources)]; + if (isset($fields['requestPageSizeField'])) { + $requestPageSize = $fields['requestPageSizeField']; + $descriptor['requestPageSizeGetMethod'] = PageStreamingDescriptor::getMethod($requestPageSize); + $descriptor['requestPageSizeSetMethod'] = PageStreamingDescriptor::setMethod($requestPageSize); + } + return new PageStreamingDescriptor($descriptor); + } + private static function getMethod(string $field) + { + return 'get' . \ucfirst($field); + } + private static function setMethod(string $field) + { + return 'set' . \ucfirst($field); + } + /** + * @return string The page token get method on the request object + */ + public function getRequestPageTokenGetMethod() + { + return $this->descriptor['requestPageTokenGetMethod']; + } + /** + * @return string The page size get method on the request object + */ + public function getRequestPageSizeGetMethod() + { + return $this->descriptor['requestPageSizeGetMethod']; + } + /** + * @return bool True if the request object has a page size field + */ + public function requestHasPageSizeField() + { + return \array_key_exists('requestPageSizeGetMethod', $this->descriptor); + } + /** + * @return string The page token get method on the response object + */ + public function getResponsePageTokenGetMethod() + { + return $this->descriptor['responsePageTokenGetMethod']; + } + /** + * @return string The resources get method on the response object + */ + public function getResourcesGetMethod() + { + return $this->descriptor['resourcesGetMethod']; + } + /** + * @return string The page token set method on the request object + */ + public function getRequestPageTokenSetMethod() + { + return $this->descriptor['requestPageTokenSetMethod']; + } + /** + * @return string The page size set method on the request object + */ + public function getRequestPageSizeSetMethod() + { + return $this->descriptor['requestPageSizeSetMethod']; + } + private static function validate(array $descriptor) + { + $requiredFields = ['requestPageTokenGetMethod', 'requestPageTokenSetMethod', 'responsePageTokenGetMethod', 'resourcesGetMethod']; + foreach ($requiredFields as $field) { + if (empty($descriptor[$field])) { + throw new InvalidArgumentException("{$field} is required for PageStreamingDescriptor"); + } + } + } +} diff --git a/vendor/Gcp/google/gax/src/PagedListResponse.php b/vendor/Gcp/google/gax/src/PagedListResponse.php new file mode 100644 index 00000000..3d84a351 --- /dev/null +++ b/vendor/Gcp/google/gax/src/PagedListResponse.php @@ -0,0 +1,189 @@ +getList(...); + * foreach ($pagedListResponse as $element) { + * // doSomethingWith($element); + * } + * ``` + * + * Example of iterating over each page of elements: + * ``` + * $pagedListResponse = $client->getList(...); + * foreach ($pagedListResponse->iteratePages() as $page) { + * foreach ($page as $element) { + * // doSomethingWith($element); + * } + * } + * ``` + * + * Example of accessing the current page, and manually iterating + * over pages: + * ``` + * $pagedListResponse = $client->getList(...); + * $page = $pagedListResponse->getPage(); + * // doSomethingWith($page); + * while ($page->hasNextPage()) { + * $page = $page->getNextPage(); + * // doSomethingWith($page); + * } + * ``` + */ +class PagedListResponse implements IteratorAggregate +{ + private $firstPage; + /** + * PagedListResponse constructor. + * + * @param Page $firstPage A page containing response details. + */ + public function __construct(Page $firstPage) + { + $this->firstPage = $firstPage; + } + /** + * Returns an iterator over the full list of elements. If the + * API response contains a (non-empty) next page token, then + * the PagedListResponse object will make calls to the underlying + * API to retrieve additional elements as required. + * + * NOTE: The result of this method is the same as getIterator(). + * Prefer using getIterator(), or iterate directly on the + * PagedListResponse object. + * + * @return Generator + * @throws ValidationException + */ + public function iterateAllElements() + { + return $this->getIterator(); + } + /** + * Returns an iterator over the full list of elements. If the + * API response contains a (non-empty) next page token, then + * the PagedListResponse object will make calls to the underlying + * API to retrieve additional elements as required. + * + * @return Generator + * @throws ValidationException + */ + #[\ReturnTypeWillChange] + public function getIterator() + { + foreach ($this->iteratePages() as $page) { + foreach ($page as $key => $element) { + (yield $key => $element); + } + } + } + /** + * Return the current page of results. + * + * @return Page + */ + public function getPage() + { + return $this->firstPage; + } + /** + * Returns an iterator over pages of results. The pages are + * retrieved lazily from the underlying API. + * + * @return Page[] + * @throws ValidationException + */ + public function iteratePages() + { + return $this->getPage()->iteratePages(); + } + /** + * Returns a collection of elements with a fixed size set by + * the collectionSize parameter. The collection will only contain + * fewer than collectionSize elements if there are no more + * pages to be retrieved from the server. + * + * NOTE: it is an error to call this method if an optional parameter + * to set the page size is not supported or has not been set in the + * original API call. It is also an error if the collectionSize parameter + * is less than the page size that has been set. + * + * @param int $collectionSize + * @throws ValidationException if a FixedSizeCollection of the specified size cannot be constructed + * @return FixedSizeCollection + */ + public function expandToFixedSizeCollection(int $collectionSize) + { + return $this->getPage()->expandToFixedSizeCollection($collectionSize); + } + /** + * Returns an iterator over fixed size collections of results. + * The collections are retrieved lazily from the underlying API. + * + * Each collection will have collectionSize elements, with the + * exception of the final collection which may contain fewer + * elements. + * + * NOTE: it is an error to call this method if an optional parameter + * to set the page size is not supported or has not been set in the + * original API call. It is also an error if the collectionSize parameter + * is less than the page size that has been set. + * + * @param int $collectionSize + * @throws ValidationException if a FixedSizeCollection of the specified size cannot be constructed + * @return Generator|FixedSizeCollection[] + */ + public function iterateFixedSizeCollections(int $collectionSize) + { + return $this->expandToFixedSizeCollection($collectionSize)->iterateCollections(); + } +} diff --git a/vendor/Gcp/google/gax/src/PathTemplate.php b/vendor/Gcp/google/gax/src/PathTemplate.php new file mode 100644 index 00000000..f5e11043 --- /dev/null +++ b/vendor/Gcp/google/gax/src/PathTemplate.php @@ -0,0 +1,106 @@ +resourceTemplate = new AbsoluteResourceTemplate($path); + } else { + $this->resourceTemplate = new RelativeResourceTemplate($path); + } + } + /** + * @return string A string representation of the path template + */ + public function __toString() + { + return $this->resourceTemplate->__toString(); + } + /** + * Renders a path template using the provided bindings. + * + * @param array $bindings An array matching var names to binding strings. + * @throws ValidationException if a key isn't provided or if a sub-template + * can't be parsed. + * @return string A rendered representation of this path template. + */ + public function render(array $bindings) + { + return $this->resourceTemplate->render($bindings); + } + /** + * Check if $path matches a resource string. + * + * @param string $path A resource string. + * @return bool + */ + public function matches(string $path) + { + return $this->resourceTemplate->matches($path); + } + /** + * Matches a fully qualified path template string. + * + * @param string $path A fully qualified path template string. + * @throws ValidationException if path can't be matched to the template. + * @return array Array matching var names to binding values. + */ + public function match(string $path) + { + return $this->resourceTemplate->match($path); + } +} diff --git a/vendor/Gcp/google/gax/src/PollingTrait.php b/vendor/Gcp/google/gax/src/PollingTrait.php new file mode 100644 index 00000000..2022c25e --- /dev/null +++ b/vendor/Gcp/google/gax/src/PollingTrait.php @@ -0,0 +1,90 @@ + 0.0; + $endTime = $this->getCurrentTimeMillis() + $totalPollTimeoutMillis; + while (\true) { + if ($hasTotalPollTimeout && $this->getCurrentTimeMillis() > $endTime) { + return \false; + } + $this->sleepMillis($currentPollDelayMillis); + if ($pollCallable()) { + return \true; + } + $currentPollDelayMillis = (int) \min([$currentPollDelayMillis * $pollDelayMultiplier, $maxPollDelayMillis]); + } + } + /** + * Protected to allow overriding for tests + * + * @return float Current time in milliseconds + */ + protected function getCurrentTimeMillis() + { + return \microtime(\true) * 1000.0; + } + /** + * Protected to allow overriding for tests + * + * @param int $millis + */ + protected function sleepMillis(int $millis) + { + \usleep($millis * 1000); + } +} diff --git a/vendor/Gcp/google/gax/src/RequestBuilder.php b/vendor/Gcp/google/gax/src/RequestBuilder.php new file mode 100644 index 00000000..14a778c1 --- /dev/null +++ b/vendor/Gcp/google/gax/src/RequestBuilder.php @@ -0,0 +1,234 @@ +baseUri = $baseUri; + $this->restConfig = (require $restConfigPath); + } + /** + * @param string $path + * @return bool + */ + public function pathExists(string $path) + { + list($interface, $method) = \explode('/', $path); + return isset($this->restConfig['interfaces'][$interface][$method]); + } + /** + * @param string $path + * @param Message $message + * @param array $headers + * @return RequestInterface + * @throws ValidationException + */ + public function build(string $path, Message $message, array $headers = []) + { + list($interface, $method) = \explode('/', $path); + if (!isset($this->restConfig['interfaces'][$interface][$method])) { + throw new ValidationException("Failed to build request, as the provided path ({$path}) was not found in the configuration."); + } + $numericEnums = isset($this->restConfig['numericEnums']) && $this->restConfig['numericEnums']; + $methodConfig = $this->restConfig['interfaces'][$interface][$method] + ['placeholders' => [], 'body' => null, 'additionalBindings' => null]; + $bindings = $this->buildBindings($methodConfig['placeholders'], $message); + $uriTemplateConfigs = $this->getConfigsForUriTemplates($methodConfig); + foreach ($uriTemplateConfigs as $config) { + $pathTemplate = $this->tryRenderPathTemplate($config['uriTemplate'], $bindings); + if ($pathTemplate) { + // We found a valid uriTemplate - now build and return the Request + list($body, $queryParams) = $this->constructBodyAndQueryParameters($message, $config); + // Request enum fields will be encoded as numbers rather than strings (in the response). + if ($numericEnums) { + $queryParams['$alt'] = "json;enum-encoding=int"; + } + $uri = $this->buildUri($pathTemplate, $queryParams); + return new Request($config['method'], $uri, ['Content-Type' => 'application/json'] + $headers, $body); + } + } + // No valid uriTemplate found - construct an exception + $uriTemplates = []; + foreach ($uriTemplateConfigs as $config) { + $uriTemplates[] = $config['uriTemplate']; + } + throw new ValidationException("Could not map bindings for {$path} to any Uri template.\n" . "Bindings: " . \print_r($bindings, \true) . "UriTemplates: " . \print_r($uriTemplates, \true)); + } + /** + * Create a list of all possible configs using the additionalBindings + * + * @param array $config + * @return array[] An array of configs + */ + private function getConfigsForUriTemplates(array $config) + { + $configs = [$config]; + if ($config['additionalBindings']) { + foreach ($config['additionalBindings'] as $additionalBinding) { + $configs[] = $additionalBinding + $config; + } + } + return $configs; + } + /** + * @param Message $message + * @param array $config + * @return array Tuple [$body, $queryParams] + */ + private function constructBodyAndQueryParameters(Message $message, array $config) + { + $messageDataJson = $message->serializeToJsonString(); + if ($config['body'] === '*') { + return [$messageDataJson, []]; + } + $body = null; + $queryParams = []; + $messageData = \json_decode($messageDataJson, \true); + foreach ($messageData as $name => $value) { + if (\array_key_exists($name, $config['placeholders'])) { + continue; + } + if (Serializer::toSnakeCase($name) === $config['body']) { + if (($bodyMessage = $message->{"get{$name}"}()) instanceof Message) { + $body = $bodyMessage->serializeToJsonString(); + } else { + $body = \json_encode($value); + } + continue; + } + if (\is_array($value) && $this->isAssoc($value)) { + foreach ($value as $key => $value2) { + $queryParams[$name . '.' . $key] = $value2; + } + } else { + $queryParams[$name] = $value; + } + } + // Ensures required query params with default values are always sent + // over the wire. + if (isset($config['queryParams'])) { + foreach ($config['queryParams'] as $requiredQueryParam) { + $requiredQueryParam = Serializer::toCamelCase($requiredQueryParam); + if (!\array_key_exists($requiredQueryParam, $queryParams)) { + $getter = Serializer::getGetter($requiredQueryParam); + $queryParamValue = $message->{$getter}(); + if ($queryParamValue instanceof Message) { + // Decode message for the query parameter. + $queryParamValue = \json_decode($queryParamValue->serializeToJsonString(), \true); + } + if (\is_array($queryParamValue)) { + // If the message has properties, add them as nested querystring values. + // NOTE: This only supports nesting at one level of depth. + foreach ($queryParamValue as $key => $value) { + $queryParams[$requiredQueryParam . '.' . $key] = $value; + } + } else { + $queryParams[$requiredQueryParam] = $queryParamValue; + } + } + } + } + return [$body, $queryParams]; + } + /** + * @param array $placeholders + * @param Message $message + * @return array Bindings from path template fields to values from message + */ + private function buildBindings(array $placeholders, Message $message) + { + $bindings = []; + foreach ($placeholders as $placeholder => $metadata) { + $value = \array_reduce($metadata['getters'], function (Message $result = null, $getter) { + if ($result) { + return $result->{$getter}(); + } + }, $message); + $bindings[$placeholder] = $value; + } + return $bindings; + } + /** + * Try to render the resource name. The rendered resource name will always contain a leading '/' + * + * @param string $uriTemplate + * @param array $bindings + * @return null|string + * @throws ValidationException + */ + private function tryRenderPathTemplate(string $uriTemplate, array $bindings) + { + $template = new AbsoluteResourceTemplate($uriTemplate); + try { + return $template->render($bindings); + } catch (ValidationException $e) { + return null; + } + } + /** + * @param string $path + * @param array $queryParams + * @return UriInterface + */ + private function buildUri(string $path, array $queryParams) + { + $uri = Utils::uriFor(\sprintf('https://%s%s', $this->baseUri, $path)); + if ($queryParams) { + $uri = $this->buildUriWithQuery($uri, $queryParams); + } + return $uri; + } +} diff --git a/vendor/Gcp/google/gax/src/RequestParamsHeaderDescriptor.php b/vendor/Gcp/google/gax/src/RequestParamsHeaderDescriptor.php new file mode 100644 index 00000000..5ae92d74 --- /dev/null +++ b/vendor/Gcp/google/gax/src/RequestParamsHeaderDescriptor.php @@ -0,0 +1,72 @@ + value]. + */ + public function __construct(array $requestParams) + { + $headerKey = self::HEADER_KEY; + $headerValue = ''; + foreach ($requestParams as $key => $value) { + if ('' !== $headerValue) { + $headerValue .= '&'; + } + $headerValue .= $key . '=' . \urlencode(\strval($value)); + } + $this->header = [$headerKey => [$headerValue]]; + } + /** + * Returns an associative array that contains request params header metadata. + * + * @return array + */ + public function getHeader() + { + return $this->header; + } +} diff --git a/vendor/Gcp/google/gax/src/ResourceHelperTrait.php b/vendor/Gcp/google/gax/src/ResourceHelperTrait.php new file mode 100644 index 00000000..9ef7e4c8 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceHelperTrait.php @@ -0,0 +1,100 @@ + $template) { + self::$templateMap[$name] = new PathTemplate($template); + } + } + private static function getPathTemplate(string $key) + { + // TODO: Add nullable return type reference once PHP 7.1 is minimum. + if (\is_null(self::$templateMap)) { + self::registerPathTemplates(); + } + return self::$templateMap[$key] ?? null; + } + private static function parseFormattedName(string $formattedName, string $template = null) : array + { + if (\is_null(self::$templateMap)) { + self::registerPathTemplates(); + } + if ($template) { + if (!isset(self::$templateMap[$template])) { + throw new ValidationException("Template name {$template} does not exist"); + } + return self::$templateMap[$template]->match($formattedName); + } + foreach (self::$templateMap as $templateName => $pathTemplate) { + try { + return $pathTemplate->match($formattedName); + } catch (ValidationException $ex) { + // Swallow the exception to continue trying other path templates + } + } + throw new ValidationException("Input did not match any known format. Input: {$formattedName}"); + } +} diff --git a/vendor/Gcp/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php b/vendor/Gcp/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php new file mode 100644 index 00000000..6932a60f --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceTemplate/AbsoluteResourceTemplate.php @@ -0,0 +1,135 @@ +"). + * + * Examples: + * /projects + * /projects/{project} + * /foo/{bar=**}/fizz/*:action + * + * Templates use the syntax of the API platform; see + * https://github.com/googleapis/api-common-protos/blob/master/google/api/http.proto + * for details. A template consists of a sequence of literals, wildcards, and variable bindings, + * where each binding can have a sub-path. A string representation can be parsed into an + * instance of AbsoluteResourceTemplate, which can then be used to perform matching and instantiation. + * + * @internal + */ +class AbsoluteResourceTemplate implements ResourceTemplateInterface +{ + private RelativeResourceTemplate $resourceTemplate; + /** @var string|bool */ + private $verb; + /** + * AbsoluteResourceTemplate constructor. + * @param string $path + * @throws ValidationException + */ + public function __construct(string $path) + { + if (empty($path)) { + throw new ValidationException('Cannot construct AbsoluteResourceTemplate from empty string'); + } + if ($path[0] !== '/') { + throw new ValidationException("Could not construct AbsoluteResourceTemplate from '{$path}': must begin with '/'"); + } + $verbSeparatorPos = $this->verbSeparatorPos($path); + $this->resourceTemplate = new RelativeResourceTemplate(\substr($path, 1, $verbSeparatorPos - 1)); + $this->verb = \substr($path, $verbSeparatorPos + 1); + } + /** + * @inheritdoc + */ + public function __toString() + { + return \sprintf("/%s%s", $this->resourceTemplate, $this->renderVerb()); + } + /** + * @inheritdoc + */ + public function render(array $bindings) + { + return \sprintf("/%s%s", $this->resourceTemplate->render($bindings), $this->renderVerb()); + } + /** + * @inheritdoc + */ + public function matches(string $path) + { + try { + $this->match($path); + return \true; + } catch (ValidationException $ex) { + return \false; + } + } + /** + * @inheritdoc + */ + public function match(string $path) + { + if (empty($path)) { + throw $this->matchException($path, "path cannot be empty"); + } + if ($path[0] !== '/') { + throw $this->matchException($path, "missing leading '/'"); + } + $verbSeparatorPos = $this->verbSeparatorPos($path); + if (\substr($path, $verbSeparatorPos + 1) !== $this->verb) { + throw $this->matchException($path, "trailing verb did not match '{$this->verb}'"); + } + return $this->resourceTemplate->match(\substr($path, 1, $verbSeparatorPos - 1)); + } + private function matchException(string $path, string $reason) + { + return new ValidationException("Could not match path '{$path}' to template '{$this}': {$reason}"); + } + private function renderVerb() + { + return $this->verb ? ':' . $this->verb : ''; + } + private function verbSeparatorPos(string $path) + { + $finalSeparatorPos = \strrpos($path, '/'); + $verbSeparatorPos = \strrpos($path, ':', $finalSeparatorPos); + if ($verbSeparatorPos === \false) { + $verbSeparatorPos = \strlen($path); + } + return $verbSeparatorPos; + } +} diff --git a/vendor/Gcp/google/gax/src/ResourceTemplate/Parser.php b/vendor/Gcp/google/gax/src/ResourceTemplate/Parser.php new file mode 100644 index 00000000..eb370056 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceTemplate/Parser.php @@ -0,0 +1,207 @@ += \strlen($path)) { + // A trailing '/' has caused the index to exceed the bounds + // of the string - provide a helpful error message. + throw self::parseError($path, \strlen($path) - 1, "invalid trailing '/'"); + } + if ($path[$index] === '{') { + // Validate that the { has a matching } + $closingBraceIndex = \strpos($path, '}', $index); + if ($closingBraceIndex === \false) { + throw self::parseError($path, \strlen($path), "Expected '}' to match '{' at index {$index}, got end of string"); + } + $segmentStringLengthWithoutBraces = $closingBraceIndex - $index - 1; + $segmentStringWithoutBraces = \substr($path, $index + 1, $segmentStringLengthWithoutBraces); + $index = $closingBraceIndex + 1; + $nextLiteral = '/'; + $remainingPath = \substr($path, $index); + if (!empty($remainingPath)) { + // Find the firstnon-slash separator seen, if any. + $nextSlashIndex = \strpos($remainingPath, '/', 0); + $nonSlashSeparators = ['-', '_', '~', '.']; + foreach ($nonSlashSeparators as $nonSlashSeparator) { + $nonSlashSeparatorIndex = \strpos($remainingPath, $nonSlashSeparator, 0); + $nextOpenBraceIndex = \strpos($remainingPath, '{', 0); + if ($nonSlashSeparatorIndex !== \false && $nonSlashSeparatorIndex === $nextOpenBraceIndex - 1) { + $index += $nonSlashSeparatorIndex; + $nextLiteral = $nonSlashSeparator; + break; + } + } + } + return self::parseVariableSegment($segmentStringWithoutBraces, $nextLiteral); + } else { + $nextSlash = \strpos($path, '/', $index); + if ($nextSlash === \false) { + $nextSlash = \strlen($path); + } + $segmentString = \substr($path, $index, $nextSlash - $index); + $nextLiteral = '/'; + $index = $nextSlash; + return self::parse($segmentString, $path, $index); + } + } + /** + * @param string $segmentString + * @param string $path + * @param int $index + * @return Segment + * @throws ValidationException + */ + private static function parse(string $segmentString, string $path, int $index) + { + if ($segmentString === '*') { + return new Segment(Segment::WILDCARD_SEGMENT); + } elseif ($segmentString === '**') { + return new Segment(Segment::DOUBLE_WILDCARD_SEGMENT); + } else { + if (!self::isValidLiteral($segmentString)) { + if (empty($segmentString)) { + // Create user friendly message in case of empty segment + throw self::parseError($path, $index, "Unexpected empty segment (consecutive '/'s are invalid)"); + } else { + throw self::parseError($path, $index, "Unexpected characters in literal segment {$segmentString}"); + } + } + return new Segment(Segment::LITERAL_SEGMENT, $segmentString); + } + } + /** + * @param string $segmentStringWithoutBraces + * @param string $separatorLiteral + * @return Segment + * @throws ValidationException + */ + private static function parseVariableSegment(string $segmentStringWithoutBraces, string $separatorLiteral) + { + // Validate there are no nested braces + $nestedOpenBracket = \strpos($segmentStringWithoutBraces, '{'); + if ($nestedOpenBracket !== \false) { + throw new ValidationException("Unexpected '{' parsing segment {$segmentStringWithoutBraces} at index {$nestedOpenBracket}"); + } + $equalsIndex = \strpos($segmentStringWithoutBraces, '='); + if ($equalsIndex === \false) { + // If the variable does not contain '=', we assume the pattern is '*' as per google.rpc.Http + $variableKey = $segmentStringWithoutBraces; + $nestedResource = new RelativeResourceTemplate("*"); + } else { + $variableKey = \substr($segmentStringWithoutBraces, 0, $equalsIndex); + $nestedResourceString = \substr($segmentStringWithoutBraces, $equalsIndex + 1); + $nestedResource = new RelativeResourceTemplate($nestedResourceString); + } + if (!self::isValidLiteral($variableKey)) { + throw new ValidationException("Unexpected characters in variable name {$variableKey}"); + } + return new Segment(Segment::VARIABLE_SEGMENT, null, $variableKey, $nestedResource, $separatorLiteral); + } + /** + * @param string $literal + * @param string $path + * @param int $index + * @return string + * @throws ValidationException + */ + private static function parseLiteralFromPath(string $literal, string $path, int &$index) + { + $literalLength = \strlen($literal); + if (\strlen($path) < $index + $literalLength) { + throw self::parseError($path, $index, "expected '{$literal}'"); + } + $consumedLiteral = \substr($path, $index, $literalLength); + if ($consumedLiteral !== $literal) { + throw self::parseError($path, $index, "expected '{$literal}'"); + } + $index += $literalLength; + return $consumedLiteral; + } + private static function parseError(string $path, int $index, string $reason) + { + return new ValidationException("Error parsing '{$path}' at index {$index}: {$reason}"); + } + /** + * Check if $literal is a valid segment literal. Segment literals may only contain numbers, + * letters, and any of the following: .-~_ + * + * @param string $literal + * @return bool + */ + private static function isValidLiteral(string $literal) + { + return \preg_match("/^[0-9a-zA-Z\\.\\-~_]+\$/", $literal) === 1; + } +} diff --git a/vendor/Gcp/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php b/vendor/Gcp/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php new file mode 100644 index 00000000..7d15e5a5 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceTemplate/RelativeResourceTemplate.php @@ -0,0 +1,336 @@ +"). + * + * Examples: + * projects + * projects/{project} + * foo/{bar=**}/fizz/* + * + * Templates use the syntax of the API platform; see + * https://github.com/googleapis/api-common-protos/blob/master/google/api/http.proto + * for details. A template consists of a sequence of literals, wildcards, and variable bindings, + * where each binding can have a sub-path. A string representation can be parsed into an + * instance of AbsoluteResourceTemplate, which can then be used to perform matching and instantiation. + * + * @internal + */ +class RelativeResourceTemplate implements ResourceTemplateInterface +{ + /** @var Segment[] */ + private array $segments; + /** + * RelativeResourceTemplate constructor. + * + * @param string $path + * @throws ValidationException + */ + public function __construct(string $path) + { + if (empty($path)) { + throw new ValidationException('Cannot construct RelativeResourceTemplate from empty string'); + } + $this->segments = Parser::parseSegments($path); + $doubleWildcardCount = self::countDoubleWildcards($this->segments); + if ($doubleWildcardCount > 1) { + throw new ValidationException("Cannot parse '{$path}': cannot contain more than one path wildcard"); + } + // Check for duplicate keys + $keys = []; + foreach ($this->segments as $segment) { + if ($segment->getSegmentType() === Segment::VARIABLE_SEGMENT) { + if (isset($keys[$segment->getKey()])) { + throw new ValidationException("Duplicate key '{$segment->getKey()}' in path {$path}"); + } + $keys[$segment->getKey()] = \true; + } + } + } + /** + * @inheritdoc + */ + public function __toString() + { + return self::renderSegments($this->segments); + } + /** + * @inheritdoc + */ + public function render(array $bindings) + { + $literalSegments = []; + $keySegmentTuples = self::buildKeySegmentTuples($this->segments); + foreach ($keySegmentTuples as list($key, $segment)) { + /** @var Segment $segment */ + if ($segment->getSegmentType() === Segment::LITERAL_SEGMENT) { + $literalSegments[] = $segment; + continue; + } + if (!\array_key_exists($key, $bindings)) { + throw $this->renderingException($bindings, "missing required binding '{$key}' for segment '{$segment}'"); + } + $value = $bindings[$key]; + if (!\is_null($value) && $segment->matches($value)) { + $literalSegments[] = new Segment(Segment::LITERAL_SEGMENT, $value, $segment->getValue(), $segment->getTemplate(), $segment->getSeparator()); + } else { + $valueString = \is_null($value) ? "null" : "'{$value}'"; + throw $this->renderingException($bindings, "expected binding '{$key}' to match segment '{$segment}', instead got {$valueString}"); + } + } + return self::renderSegments($literalSegments); + } + /** + * @inheritdoc + */ + public function matches(string $path) + { + try { + $this->match($path); + return \true; + } catch (ValidationException $ex) { + return \false; + } + } + /** + * @inheritdoc + */ + public function match(string $path) + { + // High level strategy for matching: + // - Build a list of Segments from our template, where any variable segments are + // flattened into a single, non-nested list + // - Break $path into pieces based on '/'. + // - Use the segments to further subdivide the pieces using any applicable non-slash separators. + // - Match pieces of the path with Segments in the flattened list + // In order to build correct bindings after we match the $path against our template, we + // need to (a) calculate the correct positional keys for our wildcards, and (b) maintain + // information about the variable identifier of any flattened segments. To do this, we + // build a list of [string, Segment] tuples, where the string component is the appropriate + // key. + $keySegmentTuples = self::buildKeySegmentTuples($this->segments); + $flattenedKeySegmentTuples = self::flattenKeySegmentTuples($keySegmentTuples); + $flattenedKeySegmentTuplesCount = \count($flattenedKeySegmentTuples); + \assert($flattenedKeySegmentTuplesCount > 0); + $slashPathPieces = \explode('/', $path); + $pathPieces = []; + $pathPiecesIndex = 0; + $startIndex = 0; + $slashPathPiecesCount = \count($slashPathPieces); + $doubleWildcardPieceCount = $slashPathPiecesCount - $flattenedKeySegmentTuplesCount + 1; + for ($i = 0; $i < \count($flattenedKeySegmentTuples); $i++) { + $segmentKey = $flattenedKeySegmentTuples[$i][0]; + $segment = $flattenedKeySegmentTuples[$i][1]; + // In our flattened list of segments, we should never encounter a variable segment + \assert($segment->getSegmentType() !== Segment::VARIABLE_SEGMENT); + if ($segment->getSegmentType() == Segment::DOUBLE_WILDCARD_SEGMENT) { + $pathPiecesForSegment = \array_slice($slashPathPieces, $pathPiecesIndex, $doubleWildcardPieceCount); + $pathPiece = \implode('/', $pathPiecesForSegment); + $pathPiecesIndex += $doubleWildcardPieceCount; + $pathPieces[] = $pathPiece; + continue; + } + if ($segment->getSegmentType() == Segment::WILDCARD_SEGMENT) { + if ($pathPiecesIndex >= $slashPathPiecesCount) { + break; + } + } + if ($segment->getSeparator() === '/') { + if ($pathPiecesIndex >= $slashPathPiecesCount) { + throw $this->matchException($path, "segment and path length mismatch"); + } + $pathPiece = \substr($slashPathPieces[$pathPiecesIndex++], $startIndex); + $startIndex = 0; + } else { + $rawPiece = \substr($slashPathPieces[$pathPiecesIndex], $startIndex); + $pathPieceLength = \strpos($rawPiece, $segment->getSeparator()); + $pathPiece = \substr($rawPiece, 0, $pathPieceLength); + $startIndex += $pathPieceLength + 1; + } + $pathPieces[] = $pathPiece; + } + if ($flattenedKeySegmentTuples[$i - 1][1]->getSegmentType() !== Segment::DOUBLE_WILDCARD_SEGMENT) { + // Process any remaining pieces. The binding logic will throw exceptions for any invalid paths. + for (; $pathPiecesIndex < \count($slashPathPieces); $pathPiecesIndex++) { + $pathPieces[] = $slashPathPieces[$pathPiecesIndex]; + } + } + $pathPiecesCount = \count($pathPieces); + // We would like to match pieces of our path 1:1 with the segments of our template. However, + // this is confounded by the presence of double wildcards ('**') in the template, which can + // match multiple segments in the path. + // Because there can only be one '**' present, we can determine how many segments it must + // match by examining the difference in count between the template segments and the + // path pieces. + if ($pathPiecesCount < $flattenedKeySegmentTuplesCount) { + // Each segment in $flattenedKeyedSegments must consume at least one + // segment in $pathSegments, so matching must fail. + throw $this->matchException($path, "path does not contain enough segments to be matched"); + } + $doubleWildcardPieceCount = $pathPiecesCount - $flattenedKeySegmentTuplesCount + 1; + $bindings = []; + $pathPiecesIndex = 0; + /** @var Segment $segment */ + foreach ($flattenedKeySegmentTuples as list($segmentKey, $segment)) { + $pathPiece = $pathPieces[$pathPiecesIndex++]; + if (!$segment->matches($pathPiece)) { + throw $this->matchException($path, "expected path element matching '{$segment}', got '{$pathPiece}'"); + } + // If we have a valid key, add our $pathPiece to the $bindings array. Note that there + // may be multiple copies of the same $segmentKey. This is because a flattened variable + // segment can match multiple pieces from the path. We can add these to an array and + // collapse them all once the bindings are complete. + if (isset($segmentKey)) { + $bindings += [$segmentKey => []]; + $bindings[$segmentKey][] = $pathPiece; + } + } + // It is possible that we have left over path pieces, which can occur if our template does + // not have a double wildcard. In that case, the match should fail. + if ($pathPiecesIndex !== $pathPiecesCount) { + throw $this->matchException($path, "expected end of path, got '{$pathPieces[$pathPiecesIndex]}'"); + } + // Collapse the bindings from lists into strings + $collapsedBindings = []; + foreach ($bindings as $key => $boundPieces) { + $collapsedBindings[$key] = \implode('/', $boundPieces); + } + return $collapsedBindings; + } + private function matchException(string $path, string $reason) + { + return new ValidationException("Could not match path '{$path}' to template '{$this}': {$reason}"); + } + private function renderingException(array $bindings, string $reason) + { + $bindingsString = \print_r($bindings, \true); + return new ValidationException("Error rendering '{$this}': {$reason}\n" . "Provided bindings: {$bindingsString}"); + } + /** + * @param Segment[] $segments + * @param string|null $separator An optional string separator + * @return array[] A list of [string, Segment] tuples + */ + private static function buildKeySegmentTuples(array $segments, string $separator = null) + { + $keySegmentTuples = []; + $positionalArgumentCounter = 0; + foreach ($segments as $segment) { + switch ($segment->getSegmentType()) { + case Segment::WILDCARD_SEGMENT: + case Segment::DOUBLE_WILDCARD_SEGMENT: + $positionalKey = "\${$positionalArgumentCounter}"; + $positionalArgumentCounter++; + $newSegment = $segment; + if ($separator !== null) { + $newSegment = new Segment($segment->getSegmentType(), $segment->getValue(), $segment->getKey(), $segment->getTemplate(), $separator); + } + $keySegmentTuples[] = [$positionalKey, $newSegment]; + break; + default: + $keySegmentTuples[] = [$segment->getKey(), $segment]; + } + } + return $keySegmentTuples; + } + /** + * @param array[] $keySegmentTuples A list of [string, Segment] tuples + * @return array[] A list of [string, Segment] tuples + */ + private static function flattenKeySegmentTuples(array $keySegmentTuples) + { + $flattenedKeySegmentTuples = []; + foreach ($keySegmentTuples as list($key, $segment)) { + /** @var Segment $segment */ + switch ($segment->getSegmentType()) { + case Segment::VARIABLE_SEGMENT: + // For segment variables, replace the segment with the segments of its children + $template = $segment->getTemplate(); + $nestedKeySegmentTuples = self::buildKeySegmentTuples($template->segments, $segment->getSeparator()); + foreach ($nestedKeySegmentTuples as list($nestedKey, $nestedSegment)) { + /** @var Segment $nestedSegment */ + // Nested variables are not allowed + \assert($nestedSegment->getSegmentType() !== Segment::VARIABLE_SEGMENT); + // Insert the nested segment with key set to the outer key of the + // parent variable segment + $flattenedKeySegmentTuples[] = [$key, $nestedSegment]; + } + break; + default: + // For all other segments, don't change the key or segment + $flattenedKeySegmentTuples[] = [$key, $segment]; + } + } + return $flattenedKeySegmentTuples; + } + /** + * @param Segment[] $segments + * @return int + */ + private static function countDoubleWildcards(array $segments) + { + $doubleWildcardCount = 0; + foreach ($segments as $segment) { + switch ($segment->getSegmentType()) { + case Segment::DOUBLE_WILDCARD_SEGMENT: + $doubleWildcardCount++; + break; + case Segment::VARIABLE_SEGMENT: + $doubleWildcardCount += self::countDoubleWildcards($segment->getTemplate()->segments); + break; + } + } + return $doubleWildcardCount; + } + /** + * Joins segments using their separators. + * @param array $segmentsToRender + * @return string + */ + private static function renderSegments(array $segmentsToRender) + { + $renderResult = ""; + for ($i = 0; $i < \count($segmentsToRender); $i++) { + $segment = $segmentsToRender[$i]; + $renderResult .= $segment; + if ($i < \count($segmentsToRender) - 1) { + $renderResult .= $segment->getSeparator(); + } + } + return $renderResult; + } +} diff --git a/vendor/Gcp/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php b/vendor/Gcp/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php new file mode 100644 index 00000000..d163b8d6 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceTemplate/ResourceTemplateInterface.php @@ -0,0 +1,87 @@ +"). (Note that a trailing verb without a + * leading slash is not permitted). + * + * Examples: + * projects + * /projects + * foo/{bar=**}/fizz/* + * /foo/{bar=**}/fizz/*:action + * + * Templates use the syntax of the API platform; see + * https://github.com/googleapis/api-common-protos/blob/master/google/api/http.proto + * for details. A template consists of a sequence of literals, wildcards, and variable bindings, + * where each binding can have a sub-path. A string representation can be parsed into an + * instance of AbsoluteResourceTemplate, which can then be used to perform matching and instantiation. + * + * @internal + */ +interface ResourceTemplateInterface +{ + /** + * @return string A string representation of the resource template + */ + public function __toString(); + /** + * Renders a resource template using the provided bindings. + * + * @param array $bindings An array matching var names to binding strings. + * @return string A rendered representation of this resource template. + * @throws ValidationException If $bindings does not contain all required keys + * or if a sub-template can't be parsed. + */ + public function render(array $bindings); + /** + * Check if $path matches a resource string. + * + * @param string $path A resource string. + * @return bool + */ + public function matches(string $path); + /** + * Matches a given $path to a resource template, and returns an array of bindings between + * wildcards / variables in the template and values in the path. If $path does not match the + * template, then a ValidationException is thrown. + * + * @param string $path A resource string. + * @throws ValidationException if path can't be matched to the template. + * @return array Array matching var names to binding values. + */ + public function match(string $path); +} diff --git a/vendor/Gcp/google/gax/src/ResourceTemplate/Segment.php b/vendor/Gcp/google/gax/src/ResourceTemplate/Segment.php new file mode 100644 index 00000000..bb503623 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ResourceTemplate/Segment.php @@ -0,0 +1,173 @@ +segmentType = $segmentType; + $this->value = $value; + $this->key = $key; + $this->template = $template; + $this->separator = $separator; + switch ($this->segmentType) { + case Segment::LITERAL_SEGMENT: + $this->stringRepr = "{$this->value}"; + break; + case Segment::WILDCARD_SEGMENT: + $this->stringRepr = "*"; + break; + case Segment::DOUBLE_WILDCARD_SEGMENT: + $this->stringRepr = "**"; + break; + case Segment::VARIABLE_SEGMENT: + $this->stringRepr = "{{$this->key}={$this->template}}"; + break; + default: + throw new ValidationException("Unexpected Segment type: {$this->segmentType}"); + } + } + /** + * @return string A string representation of the segment. + */ + public function __toString() + { + return $this->stringRepr; + } + /** + * Checks if $value matches this Segment. + * + * @param string $value + * @return bool + * @throws ValidationException + */ + public function matches(string $value) + { + switch ($this->segmentType) { + case Segment::LITERAL_SEGMENT: + return $this->value === $value; + case Segment::WILDCARD_SEGMENT: + return self::isValidBinding($value); + case Segment::DOUBLE_WILDCARD_SEGMENT: + return self::isValidDoubleWildcardBinding($value); + case Segment::VARIABLE_SEGMENT: + return $this->template->matches($value); + default: + throw new ValidationException("Unexpected Segment type: {$this->segmentType}"); + } + } + /** + * @return int + */ + public function getSegmentType() + { + return $this->segmentType; + } + /** + * @return string|null + */ + public function getKey() + { + return $this->key; + } + /** + * @return string|null + */ + public function getValue() + { + return $this->value; + } + /** + * @return RelativeResourceTemplate|null + */ + public function getTemplate() + { + return $this->template; + } + /** + * @return string + */ + public function getSeparator() + { + return $this->separator; + } + /** + * Check if $binding is a valid segment binding. Segment bindings may contain any characters + * except a forward slash ('/'), and may not be empty. + * + * @param string $binding + * @return bool + */ + private static function isValidBinding(string $binding) + { + return \preg_match("-^[^/]+\$-", $binding) === 1; + } + /** + * Check if $binding is a valid double wildcard binding. Segment bindings may contain any + * characters, but may not be empty. + * + * @param string $binding + * @return bool + */ + private static function isValidDoubleWildcardBinding(string $binding) + { + return \preg_match("-^.+\$-", $binding) === 1; + } +} diff --git a/vendor/Gcp/google/gax/src/RetrySettings.php b/vendor/Gcp/google/gax/src/RetrySettings.php new file mode 100644 index 00000000..10138ab0 --- /dev/null +++ b/vendor/Gcp/google/gax/src/RetrySettings.php @@ -0,0 +1,462 @@ + 100, + * 'retryDelayMultiplier' => 1.3, + * 'maxRetryDelayMillis' => 60000, + * 'initialRpcTimeoutMillis' => 20000, + * 'rpcTimeoutMultiplier' => 1.0, + * 'maxRpcTimeoutMillis' => 20000, + * 'totalTimeoutMillis' => 600000, + * 'retryableCodes' => [ApiStatus::DEADLINE_EXCEEDED, ApiStatus::UNAVAILABLE], + * ]); + * ``` + * + * It is also possible to create a new RetrySettings object from an existing + * object using the {@see \Google\ApiCore\RetrySettings::with()} method. + * + * Example modifying an existing RetrySettings object using `with()`: + * ``` + * $newRetrySettings = $retrySettings->with([ + * 'totalTimeoutMillis' => 700000, + * ]); + * ``` + * + * Modifying the retry behavior of an RPC method + * --------------------------------------------- + * + * RetrySettings objects can be used to control retries for many RPC methods in + * [google-cloud-php](https://github.com/googleapis/google-cloud-php). + * The examples below make use of the + * [GroupServiceClient](https://googleapis.github.io/google-cloud-php/#/docs/google-cloud/monitoring/v3/groupserviceclient) + * from the [Monitoring V3 API](https://github.com/googleapis/google-cloud-php/tree/master/src/Monitoring/V3), + * but they can be applied to other APIs in the + * [google-cloud-php](https://github.com/googleapis/google-cloud-php) repository. + * + * It is possible to specify the retry behavior to be used by an RPC via the + * `retrySettings` field in the `optionalArgs` parameter. The `retrySettings` + * field can contain either a RetrySettings object, or a PHP array containing + * the particular retry parameters to be updated. + * + * Example of disabling retries for a single call to the + * [listGroups](https://googleapis.github.io/google-cloud-php/#/docs/google-cloud/monitoring/v3/groupserviceclient?method=listGroups) + * method, and setting a custom timeout: + * ``` + * $result = $client->listGroups($name, [ + * 'retrySettings' => [ + * 'retriesEnabled' => false, + * 'noRetriesRpcTimeoutMillis' => 5000, + * ] + * ]); + * ``` + * + * Example of creating a new RetrySettings object and using it to override + * the retry settings for a call to the + * [listGroups](https://googleapis.github.io/google-cloud-php/#/docs/google-cloud/monitoring/v3/groupserviceclient?method=listGroups) + * method: + * ``` + * $customRetrySettings = new RetrySettings([ + * 'initialRetryDelayMillis' => 100, + * 'retryDelayMultiplier' => 1.3, + * 'maxRetryDelayMillis' => 60000, + * 'initialRpcTimeoutMillis' => 20000, + * 'rpcTimeoutMultiplier' => 1.0, + * 'maxRpcTimeoutMillis' => 20000, + * 'totalTimeoutMillis' => 600000, + * 'retryableCodes' => [ApiStatus::DEADLINE_EXCEEDED, ApiStatus::UNAVAILABLE], + * ]); + * + * $result = $client->listGroups($name, [ + * 'retrySettings' => $customRetrySettings + * ]); + * ``` + * + * Modifying the default retry behavior for RPC methods on a Client object + * ----------------------------------------------------------------------- + * + * It is also possible to specify the retry behavior for RPC methods when + * constructing a client object using the 'retrySettingsArray'. The examples + * below again make use of the + * [GroupServiceClient](https://googleapis.github.io/google-cloud-php/#/docs/google-cloud/monitoring/v3/groupserviceclient) + * from the [Monitoring V3 API](https://github.com/googleapis/google-cloud-php/tree/master/src/Monitoring/V3), + * but they can be applied to other APIs in the + * [google-cloud-php](https://github.com/googleapis/google-cloud-php) repository. + * + * The GroupServiceClient object accepts an optional `retrySettingsArray` + * parameter, which can be used to specify retry behavior for RPC methods + * on the client. The `retrySettingsArray` accepts a PHP array in which keys + * are the names of RPC methods on the client, and values are either a + * RetrySettings object or a PHP array containing the particular retry + * parameters to be updated. + * + * Example updating the retry settings for four methods of GroupServiceClient: + * ``` + * use Google\Cloud\Monitoring\V3\GroupServiceClient; + * + * $customRetrySettings = new RetrySettings([ + * 'initialRetryDelayMillis' => 100, + * 'retryDelayMultiplier' => 1.3, + * 'maxRetryDelayMillis' => 60000, + * 'initialRpcTimeoutMillis' => 20000, + * 'rpcTimeoutMultiplier' => 1.0, + * 'maxRpcTimeoutMillis' => 20000, + * 'totalTimeoutMillis' => 600000, + * 'retryableCodes' => [ApiStatus::DEADLINE_EXCEEDED, ApiStatus::UNAVAILABLE], + * ]); + * + * $updatedCustomRetrySettings = $customRetrySettings->with([ + * 'totalTimeoutMillis' => 700000 + * ]); + * + * $client = new GroupServiceClient([ + * 'retrySettingsArray' => [ + * 'listGroups' => ['retriesEnabled' => false], + * 'getGroup' => [ + * 'initialRpcTimeoutMillis' => 10000, + * 'maxRpcTimeoutMillis' => 30000, + * 'totalTimeoutMillis' => 60000, + * ], + * 'deleteGroup' => $customRetrySettings, + * 'updateGroup' => $updatedCustomRetrySettings + * ], + * ]); + * ``` + * + * Configure the use of logical timeout + * ------------------------------------ + * + * To configure the use of a logical timeout, where a logical timeout is the + * duration a method is given to complete one or more RPC attempts, with each + * attempt using only the time remaining in the logical timeout, use + * {@see \Google\ApiCore\RetrySettings::logicalTimeout()} combined with + * {@see \Google\ApiCore\RetrySettings::with()}. + * + * ``` + * $timeoutSettings = RetrySettings::logicalTimeout(30000); + * + * $customRetrySettings = $customRetrySettings->with($timeoutSettings); + * + * $result = $client->listGroups($name, [ + * 'retrySettings' => $customRetrySettings + * ]); + * ``` + * + * {@see \Google\ApiCore\RetrySettings::logicalTimeout()} can also be used on a + * method call independent of a RetrySettings instance. + * + * ``` + * $timeoutSettings = RetrySettings::logicalTimeout(30000); + * + * $result = $client->listGroups($name, [ + * 'retrySettings' => $timeoutSettings + * ]); + * ``` + */ +class RetrySettings +{ + use ValidationTrait; + const DEFAULT_MAX_RETRIES = 0; + private $retriesEnabled; + private $retryableCodes; + private $initialRetryDelayMillis; + private $retryDelayMultiplier; + private $maxRetryDelayMillis; + private $initialRpcTimeoutMillis; + private $rpcTimeoutMultiplier; + private $maxRpcTimeoutMillis; + private $totalTimeoutMillis; + private $noRetriesRpcTimeoutMillis; + /** + * The number of maximum retries an operation can do. + * This doesn't include the original API call. + * Setting this to 0 means no limit. + */ + private int $maxRetries; + /** + * When set, this function will be used to evaluate if the retry should + * take place or not. The callable will have the following signature: + * function (Exception $e, array $options): bool + */ + private ?Closure $retryFunction; + /** + * Constructs an instance. + * + * @param array $settings { + * Required. Settings for configuring the retry behavior. All parameters are required except + * $retriesEnabled and $noRetriesRpcTimeoutMillis, which are optional and have defaults + * determined based on the other settings provided. + * + * @type bool $retriesEnabled Optional. Enables retries. If not specified, the value is + * determined using the $retryableCodes setting. If $retryableCodes is empty, + * then $retriesEnabled is set to false; otherwise, it is set to true. + * @type int $noRetriesRpcTimeoutMillis Optional. The timeout of the rpc call to be used + * if $retriesEnabled is false, in milliseconds. It not specified, the value + * of $initialRpcTimeoutMillis is used. + * @type array $retryableCodes The Status codes that are retryable. Each status should be + * either one of the string constants defined on {@see \Google\ApiCore\ApiStatus} + * or an integer constant defined on {@see \Google\Rpc\Code}. + * @type int $initialRetryDelayMillis The initial delay of retry in milliseconds. + * @type int $retryDelayMultiplier The exponential multiplier of retry delay. + * @type int $maxRetryDelayMillis The max delay of retry in milliseconds. + * @type int $initialRpcTimeoutMillis The initial timeout of rpc call in milliseconds. + * @type int $rpcTimeoutMultiplier The exponential multiplier of rpc timeout. + * @type int $maxRpcTimeoutMillis The max timeout of rpc call in milliseconds. + * @type int $totalTimeoutMillis The max accumulative timeout in total. + * @type int $maxRetries The max retries allowed for an operation. + * Defaults to the value of the DEFAULT_MAX_RETRIES constant. + * This option is experimental. + * @type callable $retryFunction This function will be used to decide if we should retry or not. + * Callable signature: `function (Exception $e, array $options): bool` + * This option is experimental. + * } + */ + public function __construct(array $settings) + { + $this->validateNotNull($settings, ['initialRetryDelayMillis', 'retryDelayMultiplier', 'maxRetryDelayMillis', 'initialRpcTimeoutMillis', 'rpcTimeoutMultiplier', 'maxRpcTimeoutMillis', 'totalTimeoutMillis', 'retryableCodes']); + $this->initialRetryDelayMillis = $settings['initialRetryDelayMillis']; + $this->retryDelayMultiplier = $settings['retryDelayMultiplier']; + $this->maxRetryDelayMillis = $settings['maxRetryDelayMillis']; + $this->initialRpcTimeoutMillis = $settings['initialRpcTimeoutMillis']; + $this->rpcTimeoutMultiplier = $settings['rpcTimeoutMultiplier']; + $this->maxRpcTimeoutMillis = $settings['maxRpcTimeoutMillis']; + $this->totalTimeoutMillis = $settings['totalTimeoutMillis']; + $this->retryableCodes = $settings['retryableCodes']; + $this->retriesEnabled = \array_key_exists('retriesEnabled', $settings) ? $settings['retriesEnabled'] : \count($this->retryableCodes) > 0; + $this->noRetriesRpcTimeoutMillis = \array_key_exists('noRetriesRpcTimeoutMillis', $settings) ? $settings['noRetriesRpcTimeoutMillis'] : $this->initialRpcTimeoutMillis; + $this->maxRetries = $settings['maxRetries'] ?? self::DEFAULT_MAX_RETRIES; + $this->retryFunction = $settings['retryFunction'] ?? null; + } + /** + * Constructs an array mapping method names to CallSettings. + * + * @param string $serviceName + * The fully-qualified name of this service, used as a key into + * the client config file. + * @param array $clientConfig + * An array parsed from the standard API client config file. + * @param bool $disableRetries + * Disable retries in all loaded RetrySettings objects. Defaults to false. + * @throws ValidationException + * @return RetrySettings[] $retrySettings + */ + public static function load(string $serviceName, array $clientConfig, bool $disableRetries = \false) + { + $serviceRetrySettings = []; + $serviceConfig = $clientConfig['interfaces'][$serviceName]; + $retryCodes = $serviceConfig['retry_codes']; + $retryParams = $serviceConfig['retry_params']; + foreach ($serviceConfig['methods'] as $methodName => $methodConfig) { + $timeoutMillis = $methodConfig['timeout_millis']; + if (empty($methodConfig['retry_codes_name']) || empty($methodConfig['retry_params_name'])) { + // Construct a RetrySettings object with retries disabled + $retrySettings = self::constructDefault()->with(['noRetriesRpcTimeoutMillis' => $timeoutMillis]); + } else { + $retryCodesName = $methodConfig['retry_codes_name']; + $retryParamsName = $methodConfig['retry_params_name']; + if (!\array_key_exists($retryCodesName, $retryCodes)) { + throw new ValidationException("Invalid retry_codes_name setting: '{$retryCodesName}'"); + } + if (!\array_key_exists($retryParamsName, $retryParams)) { + throw new ValidationException("Invalid retry_params_name setting: '{$retryParamsName}'"); + } + foreach ($retryCodes[$retryCodesName] as $status) { + if (!ApiStatus::isValidStatus($status)) { + throw new ValidationException("Invalid status code: '{$status}'"); + } + } + $retryParameters = self::convertArrayFromSnakeCase($retryParams[$retryParamsName]) + ['retryableCodes' => $retryCodes[$retryCodesName], 'noRetriesRpcTimeoutMillis' => $timeoutMillis]; + if ($disableRetries) { + $retryParameters['retriesEnabled'] = \false; + } + $retrySettings = new RetrySettings($retryParameters); + } + $serviceRetrySettings[$methodName] = $retrySettings; + } + return $serviceRetrySettings; + } + public static function constructDefault() + { + return new RetrySettings(['retriesEnabled' => \false, 'noRetriesRpcTimeoutMillis' => 30000, 'initialRetryDelayMillis' => 100, 'retryDelayMultiplier' => 1.3, 'maxRetryDelayMillis' => 60000, 'initialRpcTimeoutMillis' => 20000, 'rpcTimeoutMultiplier' => 1, 'maxRpcTimeoutMillis' => 20000, 'totalTimeoutMillis' => 600000, 'retryableCodes' => [], 'maxRetries' => self::DEFAULT_MAX_RETRIES, 'retryFunction' => null]); + } + /** + * Creates a new instance of RetrySettings that updates the settings in the existing instance + * with the settings specified in the $settings parameter. + * + * @param array $settings { + * Settings for configuring the retry behavior. Supports all of the options supported by + * the constructor; see {@see \Google\ApiCore\RetrySettings::__construct()}. All parameters + * are optional - all unset parameters will default to the value in the existing instance. + * } + * @return RetrySettings + */ + public function with(array $settings) + { + $existingSettings = ['initialRetryDelayMillis' => $this->getInitialRetryDelayMillis(), 'retryDelayMultiplier' => $this->getRetryDelayMultiplier(), 'maxRetryDelayMillis' => $this->getMaxRetryDelayMillis(), 'initialRpcTimeoutMillis' => $this->getInitialRpcTimeoutMillis(), 'rpcTimeoutMultiplier' => $this->getRpcTimeoutMultiplier(), 'maxRpcTimeoutMillis' => $this->getMaxRpcTimeoutMillis(), 'totalTimeoutMillis' => $this->getTotalTimeoutMillis(), 'retryableCodes' => $this->getRetryableCodes(), 'retriesEnabled' => $this->retriesEnabled(), 'noRetriesRpcTimeoutMillis' => $this->getNoRetriesRpcTimeoutMillis(), 'maxRetries' => $this->getMaxRetries(), 'retryFunction' => $this->getRetryFunction()]; + return new RetrySettings($settings + $existingSettings); + } + /** + * Creates an associative array of the {@see \Google\ApiCore\RetrySettings} timeout fields configured + * with the given timeout specified in the $timeout parameter interpreted as a logical timeout. + * + * @param int $timeout The timeout in milliseconds to be used as a logical call timeout. + * @return array + */ + public static function logicalTimeout(int $timeout) + { + return ['initialRpcTimeoutMillis' => $timeout, 'maxRpcTimeoutMillis' => $timeout, 'totalTimeoutMillis' => $timeout, 'noRetriesRpcTimeoutMillis' => $timeout, 'rpcTimeoutMultiplier' => 1.0]; + } + /** + * @return bool Returns true if retries are enabled, otherwise returns false. + */ + public function retriesEnabled() + { + return $this->retriesEnabled; + } + /** + * @return int The timeout of the rpc call to be used if $retriesEnabled is false, + * in milliseconds. + */ + public function getNoRetriesRpcTimeoutMillis() + { + return $this->noRetriesRpcTimeoutMillis; + } + /** + * @return int[] Status codes to retry + */ + public function getRetryableCodes() + { + return $this->retryableCodes; + } + /** + * @return int The initial retry delay in milliseconds. If $this->retriesEnabled() + * is false, this setting is unused. + */ + public function getInitialRetryDelayMillis() + { + return $this->initialRetryDelayMillis; + } + /** + * @return float The retry delay multiplier. If $this->retriesEnabled() + * is false, this setting is unused. + */ + public function getRetryDelayMultiplier() + { + return $this->retryDelayMultiplier; + } + /** + * @return int The maximum retry delay in milliseconds. If $this->retriesEnabled() + * is false, this setting is unused. + */ + public function getMaxRetryDelayMillis() + { + return $this->maxRetryDelayMillis; + } + /** + * @return int The initial rpc timeout in milliseconds. If $this->retriesEnabled() + * is false, this setting is unused - use noRetriesRpcTimeoutMillis to + * set the timeout in that case. + */ + public function getInitialRpcTimeoutMillis() + { + return $this->initialRpcTimeoutMillis; + } + /** + * @return float The rpc timeout multiplier. If $this->retriesEnabled() + * is false, this setting is unused. + */ + public function getRpcTimeoutMultiplier() + { + return $this->rpcTimeoutMultiplier; + } + /** + * @return int The maximum rpc timeout in milliseconds. If $this->retriesEnabled() + * is false, this setting is unused - use noRetriesRpcTimeoutMillis to + * set the timeout in that case. + */ + public function getMaxRpcTimeoutMillis() + { + return $this->maxRpcTimeoutMillis; + } + /** + * @return int The total time in milliseconds to spend on the call, including all + * retry attempts and delays between attempts. If $this->retriesEnabled() + * is false, this setting is unused - use noRetriesRpcTimeoutMillis to + * set the timeout in that case. + */ + public function getTotalTimeoutMillis() + { + return $this->totalTimeoutMillis; + } + /** + * @experimental + */ + public function getMaxRetries() + { + return $this->maxRetries; + } + /** + * @experimental + */ + public function getRetryFunction() + { + return $this->retryFunction; + } + private static function convertArrayFromSnakeCase(array $settings) + { + $camelCaseSettings = []; + foreach ($settings as $key => $value) { + $camelCaseKey = \str_replace(' ', '', \ucwords(\str_replace('_', ' ', $key))); + $camelCaseSettings[\lcfirst($camelCaseKey)] = $value; + } + return $camelCaseSettings; + } +} diff --git a/vendor/Gcp/google/gax/src/Serializer.php b/vendor/Gcp/google/gax/src/Serializer.php new file mode 100644 index 00000000..8f7671be --- /dev/null +++ b/vendor/Gcp/google/gax/src/Serializer.php @@ -0,0 +1,421 @@ + \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\RetryInfo::class, 'google.rpc.debuginfo-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\DebugInfo::class, 'google.rpc.quotafailure-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\QuotaFailure::class, 'google.rpc.badrequest-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\BadRequest::class, 'google.rpc.requestinfo-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\RequestInfo::class, 'google.rpc.resourceinfo-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\ResourceInfo::class, 'google.rpc.errorinfo-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\ErrorInfo::class, 'google.rpc.help-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\Help::class, 'google.rpc.localizedmessage-bin' => \DeliciousBrains\WP_Offload_Media\Gcp\Google\Rpc\LocalizedMessage::class]; + private $fieldTransformers; + private $messageTypeTransformers; + private $decodeFieldTransformers; + private $decodeMessageTypeTransformers; + private $descriptorMaps = []; + /** + * Serializer constructor. + * + * @param array $fieldTransformers An array mapping field names to transformation functions + * @param array $messageTypeTransformers An array mapping message names to transformation functions + * @param array $decodeFieldTransformers An array mapping field names to transformation functions + * @param array $decodeMessageTypeTransformers An array mapping message names to transformation functions + */ + public function __construct($fieldTransformers = [], $messageTypeTransformers = [], $decodeFieldTransformers = [], $decodeMessageTypeTransformers = []) + { + $this->fieldTransformers = $fieldTransformers; + $this->messageTypeTransformers = $messageTypeTransformers; + $this->decodeFieldTransformers = $decodeFieldTransformers; + $this->decodeMessageTypeTransformers = $decodeMessageTypeTransformers; + } + /** + * Encode protobuf message as a PHP array + * + * @param mixed $message + * @return array + * @throws ValidationException + */ + public function encodeMessage($message) + { + // Get message descriptor + $pool = DescriptorPool::getGeneratedPool(); + $messageType = $pool->getDescriptorByClassName(\get_class($message)); + try { + return $this->encodeMessageImpl($message, $messageType); + } catch (\Exception $e) { + throw new ValidationException("Error encoding message: " . $e->getMessage(), $e->getCode(), $e); + } + } + /** + * Decode PHP array into the specified protobuf message + * + * @param mixed $message + * @param array $data + * @return mixed + * @throws ValidationException + */ + public function decodeMessage($message, array $data) + { + // Get message descriptor + $pool = DescriptorPool::getGeneratedPool(); + $messageType = $pool->getDescriptorByClassName(\get_class($message)); + try { + return $this->decodeMessageImpl($message, $messageType, $data); + } catch (\Exception $e) { + throw new ValidationException("Error decoding message: " . $e->getMessage(), $e->getCode(), $e); + } + } + /** + * @param Message $message + * @return string Json representation of $message + * @throws ValidationException + */ + public static function serializeToJson(Message $message) + { + return \json_encode(self::serializeToPhpArray($message), \JSON_PRETTY_PRINT); + } + /** + * @param Message $message + * @return array PHP array representation of $message + * @throws ValidationException + */ + public static function serializeToPhpArray(Message $message) + { + return self::getPhpArraySerializer()->encodeMessage($message); + } + /** + * Decode metadata received from gRPC status object + * + * @param array $metadata + * @return array + */ + public static function decodeMetadata(array $metadata) + { + if (\count($metadata) == 0) { + return []; + } + $result = []; + foreach ($metadata as $key => $values) { + foreach ($values as $value) { + $decodedValue = ['@type' => $key]; + if (self::hasBinaryHeaderSuffix($key)) { + if (isset(self::$metadataKnownTypes[$key])) { + $class = self::$metadataKnownTypes[$key]; + /** @var Message $message */ + $message = new $class(); + try { + $message->mergeFromString($value); + $decodedValue += self::serializeToPhpArray($message); + } catch (\Exception $e) { + // We encountered an error trying to deserialize the data + $decodedValue += ['data' => '']; + } + } else { + // The metadata contains an unexpected binary type + $decodedValue += ['data' => '']; + } + } else { + $decodedValue += ['data' => $value]; + } + $result[] = $decodedValue; + } + } + return $result; + } + /** + * Decode an array of Any messages into a printable PHP array. + * + * @param iterable $anyArray + * @return array + */ + public static function decodeAnyMessages($anyArray) + { + $results = []; + foreach ($anyArray as $any) { + try { + /** @var Any $any */ + /** @var Message $unpacked */ + $unpacked = $any->unpack(); + $results[] = self::serializeToPhpArray($unpacked); + } catch (\Exception $ex) { + echo "{$ex}\n"; + // failed to unpack the $any object - show as unknown binary data + $results[] = ['typeUrl' => $any->getTypeUrl(), 'value' => '']; + } + } + return $results; + } + /** + * @param FieldDescriptor $field + * @param Message|array|string $data + * @return mixed + * @throws \Exception + */ + private function encodeElement(FieldDescriptor $field, $data) + { + switch ($field->getType()) { + case GPBType::MESSAGE: + if (\is_array($data)) { + $result = $data; + } else { + $result = $this->encodeMessageImpl($data, $field->getMessageType()); + } + $messageType = $field->getMessageType()->getFullName(); + if (isset($this->messageTypeTransformers[$messageType])) { + $result = $this->messageTypeTransformers[$messageType]($result); + } + break; + default: + $result = $data; + break; + } + if (isset($this->fieldTransformers[$field->getName()])) { + $result = $this->fieldTransformers[$field->getName()]($result); + } + return $result; + } + private function getDescriptorMaps(Descriptor $descriptor) + { + if (!isset($this->descriptorMaps[$descriptor->getFullName()])) { + $fieldsByName = []; + $fieldCount = $descriptor->getFieldCount(); + for ($i = 0; $i < $fieldCount; $i++) { + $field = $descriptor->getField($i); + $fieldsByName[$field->getName()] = $field; + } + $fieldToOneof = []; + $oneofCount = $descriptor->getOneofDeclCount(); + for ($i = 0; $i < $oneofCount; $i++) { + $oneof = $descriptor->getOneofDecl($i); + $oneofFieldCount = $oneof->getFieldCount(); + for ($j = 0; $j < $oneofFieldCount; $j++) { + $field = $oneof->getField($j); + $fieldToOneof[$field->getName()] = $oneof->getName(); + } + } + $this->descriptorMaps[$descriptor->getFullName()] = [$fieldsByName, $fieldToOneof]; + } + return $this->descriptorMaps[$descriptor->getFullName()]; + } + /** + * @param Message $message + * @param Descriptor $messageType + * @return array + * @throws \Exception + */ + private function encodeMessageImpl(Message $message, Descriptor $messageType) + { + $data = []; + $fieldCount = $messageType->getFieldCount(); + for ($i = 0; $i < $fieldCount; $i++) { + $field = $messageType->getField($i); + $key = $field->getName(); + $getter = $this->getGetter($key); + $v = $message->{$getter}(); + if (\is_null($v)) { + continue; + } + // Check and skip unset fields inside oneofs + list($_, $fieldsToOneof) = $this->getDescriptorMaps($messageType); + if (isset($fieldsToOneof[$key])) { + $oneofName = $fieldsToOneof[$key]; + $oneofGetter = $this->getGetter($oneofName); + if ($message->{$oneofGetter}() !== $key) { + continue; + } + } + if ($field->isMap()) { + list($mapFieldsByName, $_) = $this->getDescriptorMaps($field->getMessageType()); + $keyField = $mapFieldsByName[self::MAP_KEY_FIELD_NAME]; + $valueField = $mapFieldsByName[self::MAP_VALUE_FIELD_NAME]; + $arr = []; + foreach ($v as $k => $vv) { + $arr[$this->encodeElement($keyField, $k)] = $this->encodeElement($valueField, $vv); + } + $v = $arr; + } elseif ($field->getLabel() === GPBLabel::REPEATED) { + $arr = []; + foreach ($v as $k => $vv) { + $arr[$k] = $this->encodeElement($field, $vv); + } + $v = $arr; + } else { + $v = $this->encodeElement($field, $v); + } + $key = self::toCamelCase($key); + $data[$key] = $v; + } + return $data; + } + /** + * @param FieldDescriptor $field + * @param mixed $data + * @return mixed + * @throws \Exception + */ + private function decodeElement(FieldDescriptor $field, $data) + { + if (isset($this->decodeFieldTransformers[$field->getName()])) { + $data = $this->decodeFieldTransformers[$field->getName()]($data); + } + switch ($field->getType()) { + case GPBType::MESSAGE: + if ($data instanceof Message) { + return $data; + } + $messageType = $field->getMessageType(); + $messageTypeName = $messageType->getFullName(); + $klass = $messageType->getClass(); + $msg = new $klass(); + if (isset($this->decodeMessageTypeTransformers[$messageTypeName])) { + $data = $this->decodeMessageTypeTransformers[$messageTypeName]($data); + } + return $this->decodeMessageImpl($msg, $messageType, $data); + default: + return $data; + } + } + /** + * @param Message $message + * @param Descriptor $messageType + * @param array $data + * @return mixed + * @throws \Exception + */ + private function decodeMessageImpl(Message $message, Descriptor $messageType, array $data) + { + list($fieldsByName, $_) = $this->getDescriptorMaps($messageType); + foreach ($data as $key => $v) { + // Get the field by tag number or name + $fieldName = self::toSnakeCase($key); + // Unknown field found + if (!isset($fieldsByName[$fieldName])) { + throw new RuntimeException(\sprintf("cannot handle unknown field %s on message %s", $fieldName, $messageType->getFullName())); + } + /** @var FieldDescriptor $field */ + $field = $fieldsByName[$fieldName]; + if ($field->isMap()) { + list($mapFieldsByName, $_) = $this->getDescriptorMaps($field->getMessageType()); + $keyField = $mapFieldsByName[self::MAP_KEY_FIELD_NAME]; + $valueField = $mapFieldsByName[self::MAP_VALUE_FIELD_NAME]; + $arr = []; + foreach ($v as $k => $vv) { + $arr[$this->decodeElement($keyField, $k)] = $this->decodeElement($valueField, $vv); + } + $value = $arr; + } elseif ($field->getLabel() === GPBLabel::REPEATED) { + $arr = []; + foreach ($v as $k => $vv) { + $arr[$k] = $this->decodeElement($field, $vv); + } + $value = $arr; + } else { + $value = $this->decodeElement($field, $v); + } + $setter = $this->getSetter($field->getName()); + $message->{$setter}($value); + // We must unset $value here, otherwise the protobuf c extension will mix up the references + // and setting one value will change all others + unset($value); + } + return $message; + } + /** + * @param string $name + * @return string Getter function + */ + public static function getGetter(string $name) + { + return 'get' . \ucfirst(self::toCamelCase($name)); + } + /** + * @param string $name + * @return string Setter function + */ + public static function getSetter(string $name) + { + return 'set' . \ucfirst(self::toCamelCase($name)); + } + /** + * Convert string from camelCase to snake_case + * + * @param string $key + * @return string + */ + public static function toSnakeCase(string $key) + { + return \strtolower(\preg_replace(['/([a-z\\d])([A-Z])/', '/([^_])([A-Z][a-z])/'], '$1_$2', $key)); + } + /** + * Convert string from snake_case to camelCase + * + * @param string $key + * @return string + */ + public static function toCamelCase(string $key) + { + return \lcfirst(\str_replace(' ', '', \ucwords(\str_replace('_', ' ', $key)))); + } + private static function hasBinaryHeaderSuffix(string $key) + { + return \substr_compare($key, "-bin", \strlen($key) - 4) === 0; + } + private static function getPhpArraySerializer() + { + if (\is_null(self::$phpArraySerializer)) { + self::$phpArraySerializer = new Serializer(); + } + return self::$phpArraySerializer; + } + public static function loadKnownMetadataTypes() + { + foreach (self::$metadataKnownTypes as $key => $class) { + new $class(); + } + } +} +// It is necessary to call this when this file is included. Otherwise we cannot be +// guaranteed that the relevant classes will be loaded into the protobuf descriptor +// pool when we try to unpack an Any object containing that class. +// phpcs:disable PSR1.Files.SideEffects +Serializer::loadKnownMetadataTypes(); +// phpcs:enable diff --git a/vendor/Gcp/google/gax/src/ServerStream.php b/vendor/Gcp/google/gax/src/ServerStream.php new file mode 100644 index 00000000..708502d6 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ServerStream.php @@ -0,0 +1,93 @@ +call = $serverStreamingCall; + if (\array_key_exists('resourcesGetMethod', $streamingDescriptor)) { + $this->resourcesGetMethod = $streamingDescriptor['resourcesGetMethod']; + } + } + /** + * A generator which yields results from the server until the streaming call + * completes. Throws an ApiException if the streaming call failed. + * + * @throws ApiException + * @return \Generator|mixed + */ + public function readAll() + { + $resourcesGetMethod = $this->resourcesGetMethod; + if (!\is_null($resourcesGetMethod)) { + foreach ($this->call->responses() as $response) { + foreach ($response->{$resourcesGetMethod}() as $resource) { + (yield $resource); + } + } + } else { + foreach ($this->call->responses() as $response) { + (yield $response); + } + } + // Errors in the REST transport will be thrown from there and not reach + // this handling. Successful REST server-streams will have an OK status. + $status = $this->call->getStatus(); + if ($status->code !== Code::OK) { + throw ApiException::createFromStdClass($status); + } + } + /** + * Return the underlying call object. + * + * @return ServerStreamingCallInterface + */ + public function getServerStreamingCall() + { + return $this->call; + } +} diff --git a/vendor/Gcp/google/gax/src/ServerStreamingCallInterface.php b/vendor/Gcp/google/gax/src/ServerStreamingCallInterface.php new file mode 100644 index 00000000..c1d4b3ed --- /dev/null +++ b/vendor/Gcp/google/gax/src/ServerStreamingCallInterface.php @@ -0,0 +1,87 @@ + $metadata Metadata to send with the call, if applicable + * (optional) + * @param array $options An array of options, possible keys: + * 'flags' => a number (optional) + * @return void + */ + public function start($data, array $metadata = [], array $options = []); + /** + * @return mixed An iterator of response values. + */ + public function responses(); + /** + * Return the status of the server stream. + * + * @return \stdClass The API status. + */ + public function getStatus(); + /** + * @return mixed The metadata sent by the server. + */ + public function getMetadata(); + /** + * @return mixed The trailing metadata sent by the server. + */ + public function getTrailingMetadata(); + /** + * @return string The URI of the endpoint. + */ + public function getPeer(); + /** + * Cancels the call. + * + * @return void + */ + public function cancel(); + /** + * Set the CallCredentials for the underlying Call. + * + * @param mixed $call_credentials The CallCredentials object + * + * @return void + */ + public function setCallCredentials($call_credentials); +} diff --git a/vendor/Gcp/google/gax/src/ServiceAddressTrait.php b/vendor/Gcp/google/gax/src/ServiceAddressTrait.php new file mode 100644 index 00000000..94f31f45 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ServiceAddressTrait.php @@ -0,0 +1,63 @@ +innerCall = $innerCall; + } + /** + * @return mixed The metadata sent by the server + */ + public function getMetadata() + { + return $this->innerCall->getMetadata(); + } + /** + * @return mixed The trailing metadata sent by the server + */ + public function getTrailingMetadata() + { + return $this->innerCall->getTrailingMetadata(); + } + /** + * @return string The URI of the endpoint + */ + public function getPeer() + { + return $this->innerCall->getPeer(); + } + /** + * Cancels the call. + */ + public function cancel() + { + $this->innerCall->cancel(); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php b/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php new file mode 100644 index 00000000..1d433c62 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingServerStreamingCall.php @@ -0,0 +1,62 @@ +innerCall->responses(); + } + /** + * Wait for the server to send the status, and return it. + * + * @return \stdClass The status object, with integer $code, string + * $details, and array $metadata members + */ + public function getStatus() + { + return $this->innerCall->getStatus(); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php b/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php new file mode 100644 index 00000000..2e0d24e8 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Grpc/ForwardingUnaryCall.php @@ -0,0 +1,54 @@ +innerCall->wait(); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php b/vendor/Gcp/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php new file mode 100644 index 00000000..034cdd68 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Grpc/ServerStreamingCallWrapper.php @@ -0,0 +1,113 @@ +stream = $stream; + } + /** + * {@inheritdoc} + */ + public function start($data, array $metadata = [], array $callOptions = []) + { + $this->stream->start($data, $metadata, $callOptions); + } + /** + * {@inheritdoc} + */ + public function responses() + { + foreach ($this->stream->responses() as $response) { + (yield $response); + } + } + /** + * {@inheritdoc} + */ + public function getStatus() + { + return $this->stream->getStatus(); + } + /** + * {@inheritdoc} + */ + public function getMetadata() + { + return $this->stream->getMetadata(); + } + /** + * {@inheritdoc} + */ + public function getTrailingMetadata() + { + return $this->stream->getTrailingMetadata(); + } + /** + * {@inheritdoc} + */ + public function getPeer() + { + return $this->stream->getPeer(); + } + /** + * {@inheritdoc} + */ + public function cancel() + { + $this->stream->cancel(); + } + /** + * {@inheritdoc} + */ + public function setCallCredentials($call_credentials) + { + $this->stream->setCallCredentials($call_credentials); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php b/vendor/Gcp/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php new file mode 100644 index 00000000..cfcb2573 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Grpc/UnaryInterceptorInterface.php @@ -0,0 +1,54 @@ +baseUri = $baseUri; + $this->httpHandler = $httpHandler; + $this->transportName = 'grpc-fallback'; + } + /** + * Builds a GrpcFallbackTransport. + * + * @param string $apiEndpoint + * The address of the API remote host, for example "example.googleapis.com". + * @param array $config { + * Config options used to construct the grpc-fallback transport. + * + * @type callable $httpHandler A handler used to deliver PSR-7 requests. + * } + * @return GrpcFallbackTransport + * @throws ValidationException + */ + public static function build(string $apiEndpoint, array $config = []) + { + $config += ['httpHandler' => null, 'clientCertSource' => null]; + list($baseUri, $port) = self::normalizeServiceAddress($apiEndpoint); + $httpHandler = $config['httpHandler'] ?: self::buildHttpHandlerAsync(); + $transport = new GrpcFallbackTransport("{$baseUri}:{$port}", $httpHandler); + if ($config['clientCertSource']) { + $transport->configureMtlsChannel($config['clientCertSource']); + } + return $transport; + } + /** + * {@inheritdoc} + */ + public function startUnaryCall(Call $call, array $options) + { + $httpHandler = $this->httpHandler; + return $httpHandler($this->buildRequest($call, $options), $this->getCallOptions($options))->then(function (ResponseInterface $response) use($options) { + if (isset($options['metadataCallback'])) { + $metadataCallback = $options['metadataCallback']; + $metadataCallback($response->getHeaders()); + } + return $response; + })->then(function (ResponseInterface $response) use($call) { + return $this->unpackResponse($call, $response); + }, function (\Exception $ex) { + throw $this->transformException($ex); + }); + } + /** + * @param Call $call + * @param array $options + * @return RequestInterface + */ + private function buildRequest(Call $call, array $options) + { + // Build common headers and set the content type to 'application/x-protobuf' + $headers = ['Content-Type' => 'application/x-protobuf'] + self::buildCommonHeaders($options); + // It is necessary to supply 'grpc-web' in the 'x-goog-api-client' header + // when using the grpc-fallback protocol. + $headers += ['x-goog-api-client' => []]; + $headers['x-goog-api-client'][] = 'grpc-web'; + // Uri format: https:///$rpc/ + $uri = "https://{$this->baseUri}/\$rpc/{$call->getMethod()}"; + return new Request('POST', $uri, $headers, $call->getMessage()->serializeToString()); + } + /** + * @param Call $call + * @param ResponseInterface $response + * @return Message + */ + private function unpackResponse(Call $call, ResponseInterface $response) + { + $decodeType = $call->getDecodeType(); + /** @var Message $responseMessage */ + $responseMessage = new $decodeType(); + $responseMessage->mergeFromString((string) $response->getBody()); + return $responseMessage; + } + /** + * @param array $options + * @return array + */ + private function getCallOptions(array $options) + { + $callOptions = $options['transportOptions']['grpcFallbackOptions'] ?? []; + if (isset($options['timeoutMillis'])) { + $callOptions['timeout'] = $options['timeoutMillis'] / 1000; + } + if ($this->clientCertSource) { + list($cert, $key) = self::loadClientCertSource($this->clientCertSource); + $callOptions['cert'] = $cert; + $callOptions['key'] = $key; + } + return $callOptions; + } + /** + * @param \Exception $ex + * @return \Exception + */ + private function transformException(\Exception $ex) + { + if ($ex instanceof RequestException && $ex->hasResponse()) { + $res = $ex->getResponse(); + $body = (string) $res->getBody(); + $status = new Status(); + try { + $status->mergeFromString($body); + return ApiException::createFromRpcStatus($status); + } catch (\Exception $parseException) { + // We were unable to parse the response body into a $status object. Instead, + // create an ApiException using the unparsed $body as message. + $code = ApiStatus::rpcCodeFromHttpStatusCode($res->getStatusCode()); + return ApiException::createFromApiResponse($body, $code, null, $parseException); + } + } else { + return $ex; + } + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/GrpcTransport.php b/vendor/Gcp/google/gax/src/Transport/GrpcTransport.php new file mode 100644 index 00000000..bd897110 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/GrpcTransport.php @@ -0,0 +1,212 @@ + [], 'channel' => null, 'interceptors' => [], 'clientCertSource' => null]; + list($addr, $port) = self::normalizeServiceAddress($apiEndpoint); + $host = "{$addr}:{$port}"; + $stubOpts = $config['stubOpts']; + // Set the required 'credentials' key in stubOpts if it is not already set. Use + // array_key_exists because null is a valid value. + if (!\array_key_exists('credentials', $stubOpts)) { + if (isset($config['clientCertSource'])) { + list($cert, $key) = self::loadClientCertSource($config['clientCertSource']); + $stubOpts['credentials'] = ChannelCredentials::createSsl(null, $key, $cert); + } else { + $stubOpts['credentials'] = ChannelCredentials::createSsl(); + } + } + $channel = $config['channel']; + if (!\is_null($channel) && !$channel instanceof Channel) { + throw new ValidationException("Channel argument to GrpcTransport must be of type \\Grpc\\Channel, " . "instead got: " . \print_r($channel, \true)); + } + try { + return new GrpcTransport($host, $stubOpts, $channel, $config['interceptors']); + } catch (Exception $ex) { + throw new ValidationException("Failed to build GrpcTransport: " . $ex->getMessage(), $ex->getCode(), $ex); + } + } + /** + * {@inheritdoc} + */ + public function startBidiStreamingCall(Call $call, array $options) + { + $this->verifyUniverseDomain($options); + return new BidiStream($this->_bidiRequest('/' . $call->getMethod(), [$call->getDecodeType(), 'decode'], isset($options['headers']) ? $options['headers'] : [], $this->getCallOptions($options)), $call->getDescriptor()); + } + /** + * {@inheritdoc} + */ + public function startClientStreamingCall(Call $call, array $options) + { + $this->verifyUniverseDomain($options); + return new ClientStream($this->_clientStreamRequest('/' . $call->getMethod(), [$call->getDecodeType(), 'decode'], isset($options['headers']) ? $options['headers'] : [], $this->getCallOptions($options)), $call->getDescriptor()); + } + /** + * {@inheritdoc} + */ + public function startServerStreamingCall(Call $call, array $options) + { + $this->verifyUniverseDomain($options); + $message = $call->getMessage(); + if (!$message) { + throw new \InvalidArgumentException('A message is required for ServerStreaming calls.'); + } + // This simultaenously creates and starts a \Grpc\ServerStreamingCall. + $stream = $this->_serverStreamRequest('/' . $call->getMethod(), $message, [$call->getDecodeType(), 'decode'], isset($options['headers']) ? $options['headers'] : [], $this->getCallOptions($options)); + return new ServerStream(new ServerStreamingCallWrapper($stream), $call->getDescriptor()); + } + /** + * {@inheritdoc} + */ + public function startUnaryCall(Call $call, array $options) + { + $this->verifyUniverseDomain($options); + $unaryCall = $this->_simpleRequest('/' . $call->getMethod(), $call->getMessage(), [$call->getDecodeType(), 'decode'], isset($options['headers']) ? $options['headers'] : [], $this->getCallOptions($options)); + /** @var Promise $promise */ + $promise = new Promise(function () use($unaryCall, $options, &$promise) { + list($response, $status) = $unaryCall->wait(); + if ($status->code == Code::OK) { + if (isset($options['metadataCallback'])) { + $metadataCallback = $options['metadataCallback']; + $metadataCallback($unaryCall->getMetadata()); + } + $promise->resolve($response); + } else { + throw ApiException::createFromStdClass($status); + } + }, [$unaryCall, 'cancel']); + return $promise; + } + private function verifyUniverseDomain(array $options) + { + if (isset($options['credentialsWrapper'])) { + $options['credentialsWrapper']->checkUniverseDomain(); + } + } + private function getCallOptions(array $options) + { + $callOptions = $options['transportOptions']['grpcOptions'] ?? []; + if (isset($options['credentialsWrapper'])) { + $audience = $options['audience'] ?? null; + $credentialsWrapper = $options['credentialsWrapper']; + $callOptions['call_credentials_callback'] = $credentialsWrapper->getAuthorizationHeaderCallback($audience); + } + if (isset($options['timeoutMillis'])) { + $callOptions['timeout'] = $options['timeoutMillis'] * 1000; + } + return $callOptions; + } + private static function loadClientCertSource(callable $clientCertSource) + { + return \call_user_func($clientCertSource); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/HttpUnaryTransportTrait.php b/vendor/Gcp/google/gax/src/Transport/HttpUnaryTransportTrait.php new file mode 100644 index 00000000..f8ec7b78 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/HttpUnaryTransportTrait.php @@ -0,0 +1,150 @@ +throwUnsupportedException(); + } + /** + * {@inheritdoc} + * @return never + * @throws \BadMethodCallException + */ + public function startServerStreamingCall(Call $call, array $options) + { + $this->throwUnsupportedException(); + } + /** + * {@inheritdoc} + * @return never + * @throws \BadMethodCallException + */ + public function startBidiStreamingCall(Call $call, array $options) + { + $this->throwUnsupportedException(); + } + /** + * {@inheritdoc} + */ + public function close() + { + // Nothing to do. + } + /** + * @param array $options + * @return array + */ + private static function buildCommonHeaders(array $options) + { + $headers = $options['headers'] ?? []; + if (!\is_array($headers)) { + throw new \InvalidArgumentException('The "headers" option must be an array'); + } + // If not already set, add an auth header to the request + if (!isset($headers['Authorization']) && isset($options['credentialsWrapper'])) { + $credentialsWrapper = $options['credentialsWrapper']; + $audience = $options['audience'] ?? null; + $callback = $credentialsWrapper->getAuthorizationHeaderCallback($audience); + // Prevent unexpected behavior, as the authorization header callback + // uses lowercase "authorization" + unset($headers['authorization']); + // Mitigate scenario where InsecureCredentialsWrapper returns null. + $authHeaders = empty($callback) ? [] : $callback(); + if (!\is_array($authHeaders)) { + throw new \UnexpectedValueException('Expected array response from authorization header callback'); + } + $headers += $authHeaders; + } + return $headers; + } + /** + * @return callable + * @throws ValidationException + */ + private static function buildHttpHandlerAsync() + { + try { + return [HttpHandlerFactory::build(), 'async']; + } catch (Exception $ex) { + throw new ValidationException("Failed to build HttpHandler", $ex->getCode(), $ex); + } + } + /** + * Set the path to a client certificate. + * + * @param callable $clientCertSource + */ + private function configureMtlsChannel(callable $clientCertSource) + { + $this->clientCertSource = $clientCertSource; + } + /** + * @return never + * @throws \BadMethodCallException + */ + private function throwUnsupportedException() + { + throw new \BadMethodCallException("Streaming calls are not supported while using the {$this->transportName} transport."); + } + private static function loadClientCertSource(callable $clientCertSource) + { + $certFile = \tempnam(\sys_get_temp_dir(), 'cert'); + $keyFile = \tempnam(\sys_get_temp_dir(), 'key'); + list($cert, $key) = \call_user_func($clientCertSource); + \file_put_contents($certFile, $cert); + \file_put_contents($keyFile, $key); + // the key and the cert are returned in one temporary file + return [$certFile, $keyFile]; + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Rest/JsonStreamDecoder.php b/vendor/Gcp/google/gax/src/Transport/Rest/JsonStreamDecoder.php new file mode 100644 index 00000000..0b3e7948 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Rest/JsonStreamDecoder.php @@ -0,0 +1,215 @@ + $options { + * An array of optional arguments. + * + * @type bool $ignoreUnknown + * Toggles whether or not to throw an exception when an unknown field + * is encountered in a response message. The default is true. + * @type int $readChunkSizeBytes + * The upper size limit in bytes that can be read at a time from the + * response stream. The default is 1 KB. + * } + * + * @experimental + */ + public function __construct(StreamInterface $stream, string $decodeType, array $options = []) + { + $this->stream = $stream; + $this->decodeType = $decodeType; + if (isset($options['ignoreUnknown'])) { + $this->ignoreUnknown = $options['ignoreUnknown']; + } + if (isset($options['readChunkSize'])) { + $this->readChunkSize = $options['readChunkSizeBytes']; + } + } + /** + * Begins decoding the configured response stream. It is a generator which + * yields messages of the given decode type from the stream until the stream + * completes. Throws an Exception if the stream is closed before the closing + * byte is read or if it encounters an error while decoding a message. + * + * @throws RuntimeException + * @return \Generator + */ + public function decode() + { + try { + foreach ($this->_decode() as $response) { + (yield $response); + } + } catch (RuntimeException $re) { + $msg = $re->getMessage(); + $streamClosedException = \strpos($msg, 'Stream is detached') !== \false || \strpos($msg, 'Unexpected stream close') !== \false; + // Only throw the exception if close() was not called and it was not + // a closing-related exception. + if (!$this->closeCalled || !$streamClosedException) { + throw $re; + } + } + } + /** + * @return \Generator + */ + private function _decode() + { + $decodeType = $this->decodeType; + $str = \false; + $prev = $chunk = ''; + $start = $end = $cursor = $level = 0; + while ($chunk !== '' || !$this->stream->eof()) { + // Read up to $readChunkSize bytes from the stream. + $chunk .= $this->stream->read($this->readChunkSize); + // If the response stream has been closed and the only byte + // remaining is the closing array bracket, we are done. + if ($this->stream->eof() && $chunk === ']') { + $level--; + break; + } + // Parse the freshly read data available in $chunk. + $chunkLength = \strlen($chunk); + while ($cursor < $chunkLength) { + // Access the next byte for processing. + $b = $chunk[$cursor]; + // Track open/close double quotes of a key or value. Do not + // toggle flag with the pervious byte was an escape character. + if ($b === '"' && $prev !== self::ESCAPE_CHAR) { + $str = !$str; + } + // Skip over new lines that break up items. + if ($b === "\n" && $level === 1) { + $start++; + } + // Ignore commas separating messages in the stream array. + if ($b === ',' && $level === 1) { + $start++; + } + // Track the opening of a new array or object if not in a string + // value. + if (($b === '{' || $b === '[') && !$str) { + $level++; + // Opening of the array/root object. + // Do not include it in the messageBuffer. + if ($level === 1) { + $start++; + } + } + // Track the closing of an object if not in a string value. + if ($b === '}' && !$str) { + $level--; + if ($level === 1) { + $end = $cursor + 1; + } + } + // Track the closing of an array if not in a string value. + if ($b === ']' && !$str) { + $level--; + // If we are seeing a closing square bracket at the + // response message level, e.g. {"foo], there is a problem. + if ($level === 1) { + throw new \RuntimeException('Received closing byte mid-message'); + } + } + // A message-closing byte was just buffered. Decode the + // message with the decode type, clearing the messageBuffer, + // and yield it. + // + // TODO(noahdietz): Support google.protobuf.*Value messages that + // are encoded as primitives and separated by commas. + if ($end !== 0) { + $length = $end - $start; + /** @var \Google\Protobuf\Internal\Message $return */ + $return = new $decodeType(); + $return->mergeFromJsonString(\substr($chunk, $start, $length), $this->ignoreUnknown); + (yield $return); + // Dump the part of the chunk used for parsing the message + // and use the remaining for the next message. + $remaining = $chunkLength - $length; + $chunk = \substr($chunk, $end, $remaining); + // Reset all indices and exit chunk processing. + $start = 0; + $end = 0; + $cursor = 0; + break; + } + $cursor++; + // An escaped back slash should not escape the following character. + if ($b === self::ESCAPE_CHAR && $prev === self::ESCAPE_CHAR) { + $b = ''; + } + $prev = $b; + } + // If after attempting to process the chunk, no progress was made and the + // stream is closed, we must break as the stream has closed prematurely. + if ($cursor === $chunkLength && $this->stream->eof()) { + break; + } + } + if ($level > 0) { + throw new \RuntimeException('Unexpected stream close before receiving the closing byte'); + } + } + /** + * Closes the underlying stream. If the stream is actively being decoded, an + * exception will not be thrown due to the interruption. + * + * @return void + */ + public function close() + { + $this->closeCalled = \true; + $this->stream->close(); + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/Rest/RestServerStreamingCall.php b/vendor/Gcp/google/gax/src/Transport/Rest/RestServerStreamingCall.php new file mode 100644 index 00000000..36ec62a3 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/Rest/RestServerStreamingCall.php @@ -0,0 +1,173 @@ + */ + private array $decoderOptions; + private RequestInterface $originalRequest; + private ?JsonStreamDecoder $decoder; + private string $decodeType; + private ?ResponseInterface $response; + private stdClass $status; + /** + * @param callable $httpHandler + * @param string $decodeType + * @param array $decoderOptions + */ + public function __construct(callable $httpHandler, string $decodeType, array $decoderOptions) + { + $this->httpHandler = $httpHandler; + $this->decodeType = $decodeType; + $this->decoderOptions = $decoderOptions; + } + /** + * {@inheritdoc} + */ + public function start($request, array $headers = [], array $callOptions = []) + { + $this->originalRequest = $this->appendHeaders($request, $headers); + try { + $handler = $this->httpHandler; + $response = $handler($this->originalRequest, $callOptions)->wait(); + } catch (\Exception $ex) { + if ($ex instanceof RequestException && $ex->hasResponse()) { + $ex = ApiException::createFromRequestException( + $ex, + /* isStream */ + \true + ); + } + throw $ex; + } + // Create an OK Status for a successful request just so that it + // has a return value. + $this->status = new stdClass(); + $this->status->code = Code::OK; + $this->status->message = ApiStatus::OK; + $this->status->details = []; + $this->response = $response; + } + /** + * @param RequestInterface $request + * @param array $headers + * @return RequestInterface + */ + private function appendHeaders(RequestInterface $request, array $headers) + { + foreach ($headers as $key => $value) { + $request = $request->hasHeader($key) ? $request->withAddedHeader($key, $value) : $request->withHeader($key, $value); + } + return $request; + } + /** + * {@inheritdoc} + */ + public function responses() + { + if (\is_null($this->response)) { + throw new \Exception('Stream has not been started.'); + } + // Decode the stream and yield responses as they are read. + $this->decoder = new JsonStreamDecoder($this->response->getBody(), $this->decodeType, $this->decoderOptions); + foreach ($this->decoder->decode() as $message) { + (yield $message); + } + } + /** + * Return the status of the server stream. If the call has not been started + * this will be null. + * + * @return stdClass The status, with integer $code, string + * $details, and array $metadata members + */ + public function getStatus() + { + return $this->status; + } + /** + * {@inheritdoc} + */ + public function getMetadata() + { + return \is_null($this->response) ? null : $this->response->getHeaders(); + } + /** + * The Rest transport does not support trailing metadata. This is a + * passthrough to getMetadata(). + */ + public function getTrailingMetadata() + { + return $this->getMetadata(); + } + /** + * {@inheritdoc} + */ + public function getPeer() + { + return $this->originalRequest->getUri(); + } + /** + * {@inheritdoc} + */ + public function cancel() + { + if (!\is_null($this->decoder)) { + $this->decoder->close(); + } + } + /** + * For the REST transport this is a no-op. + * {@inheritdoc} + */ + public function setCallCredentials($call_credentials) + { + // Do nothing. + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/RestTransport.php b/vendor/Gcp/google/gax/src/Transport/RestTransport.php new file mode 100644 index 00000000..2314c8e1 --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/RestTransport.php @@ -0,0 +1,200 @@ +requestBuilder = $requestBuilder; + $this->httpHandler = $httpHandler; + $this->transportName = 'REST'; + } + /** + * Builds a RestTransport. + * + * @param string $apiEndpoint + * The address of the API remote host, for example "example.googleapis.com". + * @param string $restConfigPath + * Path to rest config file. + * @param array $config { + * Config options used to construct the gRPC transport. + * + * @type callable $httpHandler A handler used to deliver PSR-7 requests. + * @type callable $clientCertSource A callable which returns the client cert as a string. + * } + * @return RestTransport + * @throws ValidationException + */ + public static function build(string $apiEndpoint, string $restConfigPath, array $config = []) + { + $config += ['httpHandler' => null, 'clientCertSource' => null]; + list($baseUri, $port) = self::normalizeServiceAddress($apiEndpoint); + $requestBuilder = new RequestBuilder("{$baseUri}:{$port}", $restConfigPath); + $httpHandler = $config['httpHandler'] ?: self::buildHttpHandlerAsync(); + $transport = new RestTransport($requestBuilder, $httpHandler); + if ($config['clientCertSource']) { + $transport->configureMtlsChannel($config['clientCertSource']); + } + return $transport; + } + /** + * {@inheritdoc} + */ + public function startUnaryCall(Call $call, array $options) + { + $headers = self::buildCommonHeaders($options); + // call the HTTP handler + $httpHandler = $this->httpHandler; + return $httpHandler($this->requestBuilder->build($call->getMethod(), $call->getMessage(), $headers), $this->getCallOptions($options))->then(function (ResponseInterface $response) use($call, $options) { + $decodeType = $call->getDecodeType(); + /** @var Message $return */ + $return = new $decodeType(); + $body = (string) $response->getBody(); + // In some rare cases LRO response metadata may not be loaded + // in the descriptor pool, triggering an exception. The catch + // statement handles this case and attempts to add the LRO + // metadata type to the pool by directly instantiating the + // metadata class. + try { + $return->mergeFromJsonString($body, \true); + } catch (\Exception $ex) { + if (!isset($options['metadataReturnType'])) { + throw $ex; + } + if (\strpos($ex->getMessage(), 'Error occurred during parsing:') !== 0) { + throw $ex; + } + new $options['metadataReturnType'](); + $return->mergeFromJsonString($body, \true); + } + if (isset($options['metadataCallback'])) { + $metadataCallback = $options['metadataCallback']; + $metadataCallback($response->getHeaders()); + } + return $return; + }, function (\Throwable $ex) { + if ($ex instanceof RequestException && $ex->hasResponse()) { + throw ApiException::createFromRequestException($ex); + } + throw $ex; + }); + } + /** + * {@inheritdoc} + * @throws \BadMethodCallException for forwards compatibility with older GAPIC clients + */ + public function startServerStreamingCall(Call $call, array $options) + { + $message = $call->getMessage(); + if (!$message) { + throw new \InvalidArgumentException('A message is required for ServerStreaming calls.'); + } + // Maintain forwards compatibility with older GAPIC clients not configured for REST server streaming + // @see https://github.com/googleapis/gax-php/issues/370 + if (!$this->requestBuilder->pathExists($call->getMethod())) { + $this->unsupportedServerStreamingCall($call, $options); + } + $headers = self::buildCommonHeaders($options); + $callOptions = $this->getCallOptions($options); + $request = $this->requestBuilder->build($call->getMethod(), $call->getMessage()); + $decoderOptions = []; + if (isset($options['decoderOptions'])) { + $decoderOptions = $options['decoderOptions']; + } + return new ServerStream($this->_serverStreamRequest($this->httpHandler, $request, $headers, $call->getDecodeType(), $callOptions, $decoderOptions), $call->getDescriptor()); + } + /** + * Creates and starts a RestServerStreamingCall. + * + * @param callable $httpHandler The HTTP Handler to invoke the request with. + * @param RequestInterface $request The request to invoke. + * @param array $headers The headers to include in the request. + * @param string $decodeType The response stream message type to decode. + * @param array $callOptions The call options to use when making the call. + * @param array $decoderOptions The options to use for the JsonStreamDecoder. + * + * @return RestServerStreamingCall + */ + private function _serverStreamRequest($httpHandler, $request, $headers, $decodeType, $callOptions, $decoderOptions = []) + { + $call = new RestServerStreamingCall($httpHandler, $decodeType, $decoderOptions); + $call->start($request, $headers, $callOptions); + return $call; + } + /** + * @param array $options + * + * @return array + */ + private function getCallOptions(array $options) + { + $callOptions = $options['transportOptions']['restOptions'] ?? []; + if (isset($options['timeoutMillis'])) { + $callOptions['timeout'] = $options['timeoutMillis'] / 1000; + } + if ($this->clientCertSource) { + list($cert, $key) = self::loadClientCertSource($this->clientCertSource); + $callOptions['cert'] = $cert; + $callOptions['key'] = $key; + } + return $callOptions; + } +} diff --git a/vendor/Gcp/google/gax/src/Transport/TransportInterface.php b/vendor/Gcp/google/gax/src/Transport/TransportInterface.php new file mode 100644 index 00000000..50a2018b --- /dev/null +++ b/vendor/Gcp/google/gax/src/Transport/TransportInterface.php @@ -0,0 +1,86 @@ + $options + * + * @return BidiStream + */ + public function startBidiStreamingCall(Call $call, array $options); + /** + * Starts a client streaming call. + * + * @param Call $call + * @param array $options + * + * @return ClientStream + */ + public function startClientStreamingCall(Call $call, array $options); + /** + * Starts a server streaming call. + * + * @param Call $call + * @param array $options + * + * @return ServerStream + */ + public function startServerStreamingCall(Call $call, array $options); + /** + * Returns a promise used to execute network requests. + * + * @param Call $call + * @param array $options + * + * @return PromiseInterface + * @throws ValidationException + */ + public function startUnaryCall(Call $call, array $options); + /** + * Closes the connection, if one exists. + * + * @return void + */ + public function close(); +} diff --git a/vendor/Gcp/google/gax/src/UriTrait.php b/vendor/Gcp/google/gax/src/UriTrait.php new file mode 100644 index 00000000..40c89539 --- /dev/null +++ b/vendor/Gcp/google/gax/src/UriTrait.php @@ -0,0 +1,63 @@ + &$v) { + if (\is_bool($v)) { + $v = $v ? 'true' : 'false'; + } + } + return Utils::uriFor($uri)->withQuery(Query::build($query)); + } +} diff --git a/vendor/Gcp/google/gax/src/ValidationException.php b/vendor/Gcp/google/gax/src/ValidationException.php new file mode 100644 index 00000000..f19685d6 --- /dev/null +++ b/vendor/Gcp/google/gax/src/ValidationException.php @@ -0,0 +1,41 @@ +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

1&Sxce;5cE_yDZnTa=!8xd&l?#!f4E09!p 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 GWa#e!Do&M-%-4E=PBS@{$-Gd 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 G~mvTm);ku@p87#mr8_4;`{0*d%SG@YutDl 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