google/appengine/ext/cloud_storage_streams/CloudStorageClient.php
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.
\google\appengine\ext\cloud_storage_streams\CloudStorageClient
Derived classes then only implement the methods that are relevant to the operations that they perform.
- Children
- \google\appengine\ext\cloud_storage_streams\CloudStorageDeleteClient
- \google\appengine\ext\cloud_storage_streams\CloudStorageWriteClient
- \google\appengine\ext\cloud_storage_streams\CloudStorageRenameClient
- \google\appengine\ext\cloud_storage_streams\CloudStorageReadClient
- \google\appengine\ext\cloud_storage_streams\CloudStorageUrlStatClient
- \google\appengine\ext\cloud_storage_streams\CloudStorageDirectoryClient
Constants
METADATA_HEADER_PREFIX
= 'x-goog-meta-'
MEMCACHE_KEY_FORMAT
= "_ah_gs_read_cache_%s_%s"
The parameters are the object url (as a string) and the read range, as a string (e.g. bytes=0-512000). Example key for a cloud storage file gs://bucket/object.png _ah_gs_read_cache_https://storage.googleapis.com/bucket/object.png_bytes=0-524287
WRITABLE_MEMCACHE_KEY_FORMAT
= "_ah_gs_write_bucket_cache_%s"
The only way to check if an app can write to a bucket is by actually writing a file. As the ACL on a bucket is unlikely to change then we can cache the result.
Methods
__construct
(string $bucket, string $object = null, resource $context = null)
: void
Construct an object of CloudStorageClient.
Name | Type | Description |
---|---|---|
$bucket | string |
The name of the bucket. |
$object | string |
The name of the object, or null if there is no object. |
$context | resource |
The stream context to use. |
createObjectUrl
( $bucket, $object = null)
: void
Create a URL for a target bucket and optional object.
Name | Type | Description |
---|---|---|
$bucket | ||
$object |
- VisibleForTesting
getContentType
()
: void
Subclass can override this method to return the MIME content type of the underlying GCS object.
getMetaData
()
: void
Subclass can override this method to return the metadata of the underlying GCS object.