Class: Fog::AWS::Storage

Inherits:
Service
  • Object
show all
Extended by:
CredentialFetcher::ServiceMethods
Defined in:
lib/fog/aws/storage.rb,
lib/fog/aws/models/storage/file.rb,
lib/fog/aws/models/storage/files.rb,
lib/fog/aws/models/storage/version.rb,
lib/fog/aws/models/storage/versions.rb,
lib/fog/aws/models/storage/directory.rb,
lib/fog/aws/models/storage/directories.rb,
lib/fog/aws/requests/storage/acl_utils.rb,
lib/fog/aws/requests/storage/cors_utils.rb,
lib/fog/aws/requests/storage/get_bucket.rb,
lib/fog/aws/requests/storage/get_object.rb,
lib/fog/aws/requests/storage/list_parts.rb,
lib/fog/aws/requests/storage/put_bucket.rb,
lib/fog/aws/requests/storage/put_object.rb,
lib/fog/aws/requests/storage/sync_clock.rb,
lib/fog/aws/requests/storage/copy_object.rb,
lib/fog/aws/requests/storage/get_service.rb,
lib/fog/aws/requests/storage/head_bucket.rb,
lib/fog/aws/requests/storage/head_object.rb,
lib/fog/aws/requests/storage/upload_part.rb,
lib/fog/aws/requests/storage/delete_bucket.rb,
lib/fog/aws/requests/storage/delete_object.rb,
lib/fog/aws/requests/storage/get_bucket_acl.rb,
lib/fog/aws/requests/storage/get_object_acl.rb,
lib/fog/aws/requests/storage/get_object_url.rb,
lib/fog/aws/requests/storage/put_bucket_acl.rb,
lib/fog/aws/requests/storage/put_object_acl.rb,
lib/fog/aws/requests/storage/put_object_url.rb,
lib/fog/aws/requests/storage/get_bucket_cors.rb,
lib/fog/aws/requests/storage/head_object_url.rb,
lib/fog/aws/requests/storage/put_bucket_cors.rb,
lib/fog/aws/requests/storage/upload_part_copy.rb,
lib/fog/aws/requests/storage/delete_object_url.rb,
lib/fog/aws/requests/storage/get_bucket_policy.rb,
lib/fog/aws/requests/storage/put_bucket_policy.rb,
lib/fog/aws/requests/storage/delete_bucket_cors.rb,
lib/fog/aws/requests/storage/get_bucket_logging.rb,
lib/fog/aws/requests/storage/get_bucket_tagging.rb,
lib/fog/aws/requests/storage/get_bucket_website.rb,
lib/fog/aws/requests/storage/get_object_tagging.rb,
lib/fog/aws/requests/storage/get_object_torrent.rb,
lib/fog/aws/requests/storage/put_bucket_logging.rb,
lib/fog/aws/requests/storage/put_bucket_tagging.rb,
lib/fog/aws/requests/storage/put_bucket_website.rb,
lib/fog/aws/requests/storage/put_object_tagging.rb,
lib/fog/aws/requests/storage/get_bucket_location.rb,
lib/fog/aws/requests/storage/get_object_http_url.rb,
lib/fog/aws/requests/storage/get_request_payment.rb,
lib/fog/aws/requests/storage/post_object_restore.rb,
lib/fog/aws/requests/storage/put_request_payment.rb,
lib/fog/aws/requests/storage/shared_mock_methods.rb,
lib/fog/aws/requests/storage/delete_bucket_policy.rb,
lib/fog/aws/requests/storage/get_bucket_lifecycle.rb,
lib/fog/aws/requests/storage/get_object_https_url.rb,
lib/fog/aws/requests/storage/put_bucket_lifecycle.rb,
lib/fog/aws/requests/storage/delete_bucket_tagging.rb,
lib/fog/aws/requests/storage/delete_bucket_website.rb,
lib/fog/aws/requests/storage/get_bucket_versioning.rb,
lib/fog/aws/requests/storage/put_bucket_versioning.rb,
lib/fog/aws/requests/storage/abort_multipart_upload.rb,
lib/fog/aws/requests/storage/list_multipart_uploads.rb,
lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb,
lib/fog/aws/requests/storage/delete_multiple_objects.rb,
lib/fog/aws/requests/storage/get_bucket_notification.rb,
lib/fog/aws/requests/storage/put_bucket_notification.rb,
lib/fog/aws/requests/storage/complete_multipart_upload.rb,
lib/fog/aws/requests/storage/initiate_multipart_upload.rb,
lib/fog/aws/requests/storage/post_object_hidden_fields.rb,
lib/fog/aws/requests/storage/get_bucket_object_versions.rb

Direct Known Subclasses

Storage::AWS

Defined Under Namespace

Modules: DeleteObjectUrl, GetObjectHttpUrl, GetObjectHttpsUrl, GetObjectUrl, HeadObjectUrl, PostObjectHiddenFields, PutObjectUrl, SharedMockMethods, Utils Classes: Directories, Directory, File, Files, Mock, Real, Version, Versions

Constant Summary collapse

COMPLIANT_BUCKET_NAMES =
/^(?:[a-z]|\d(?!\d{0,2}(?:\.\d{1,3}){3}$))(?:[a-z0-9]|\.(?![\.\-])|\-(?![\.])){1,61}[a-z0-9]$/
DEFAULT_REGION =
'us-east-1'
ACCELERATION_HOST =
's3-accelerate.amazonaws.com'
DEFAULT_SCHEME =
'https'
DEFAULT_SCHEME_PORT =
{
  'http' => 80,
  'https' => 443
}
DEFAULT_CONNECTION_OPTIONS =
{
  retry_limit: 5,
  retry_interval: 1,
  retry_errors: [
    Excon::Error::Timeout, Excon::Error::Socket, Excon::Error::Server
  ]
}
MIN_MULTIPART_CHUNK_SIZE =
5242880
MAX_SINGLE_PUT_SIZE =
5368709120
VALID_QUERY_KEYS =
%w[
  acl
  cors
  delete
  lifecycle
  location
  logging
  notification
  partNumber
  policy
  requestPayment
  response-cache-control
  response-content-disposition
  response-content-encoding
  response-content-language
  response-content-type
  response-expires
  restore
  tagging
  torrent
  uploadId
  uploads
  versionId
  versioning
  versions
  website
]
ALLOWED_UPLOAD_PART_OPTIONS =
%i(
  x-amz-copy-source
  x-amz-copy-source-if-match
  x-amz-copy-source-if-modified-since
  x-amz-copy-source-if-none-match
  x-amz-copy-source-if-unmodified-since
  x-amz-copy-source-range
  x-amz-copy-source-server-side-encryption-customer-algorithm
  x-amz-copy-source-server-side-encryption-customer-key
  x-amz-copy-source-server-side-encryption-customer-key-MD5
  x-amz-expected-bucket-owner
  x-amz-request-payer
  x-amz-server-side-encryption-customer-algorithm
  x-amz-server-side-encryption-customer-key
  x-amz-server-side-encryption-customer-key-MD5
  x-amz-source-expected-bucket-owner
).freeze

Method Summary

Methods included from CredentialFetcher::ServiceMethods

fetch_credentials, fetch_credentials_token_header