# Package net.snowflake.client.jdbc.cloud.storage

Interface Summary
SnowflakeStorageClient: Interface for storage client provider implementations
StorageObjectMetadata: Interface for platform-independent remote storage object metadata, modeled after the S3 ObjectMetadata class

Class Summary
AzureObjectMetadata: Implements platform-independent interface Azure BLOB object metadata
AzureObjectSummariesIterator: Iterator class for ObjectSummary objects on Azure Returns platform-independent instances (StorageObjectSummary)
EncryptionProvider: Handles encryption and decryption using AES.
S3ObjectMetadata: s3 implementation of platform independent StorageObjectMetadata interface, wraps an S3 ObjectMetadata class
S3ObjectSummariesIterator: Iterator class for ObjectSummary objects on S3 Wraps an iterator of S3 object summaries and returns platform independent instances (StorageObjectSummary)
S3StorageObjectMetadata: Implementation of StorageObjectMetadata for S3 for remote storage object metadata.
SnowflakeAzureClient: Encapsulates the Azure Storage client and all Azure Storage operations and logic
SnowflakeS3Client: Wrapper around AmazonS3Client.
StageInfo: Encapsulates all the required stage properties used by GET/PUT for Azure and S3 stages
StorageClientFactory: Factory object for abstracting the creation of storage client objects: SnowflakeStorageClient and StorageObjectMetadata
StorageObjectSummary: Storage platform agnostic class that encapsulates remote storage object properties
StorageObjectSummaryCollection: Provides and iterator over storage object summaries from all supported cloud storage providers

Enum Summary
StageInfo.StageType

Exception Summary
StorageProviderException: Custom exception class to signal a remote provider exception in a platform-independent manner.