# Package org.apache.sis.cloud.aws.s3

package org.apache.sis.cloud.aws.s3
Java NIO wrappers for Amazon Simple Storage Service (S3). The wrapped framework is AWS SDK version 2.

## URL syntax

The S3 storage mechanism is similar to a `java​.util​.Map`: a set of key-value pairs where the keys have no particular meaning for S3. However, Apache SIS interprets the key names in a way similar to file paths. In this module, files can be understood as S3 keys with a special meaning given by Apache SIS to the `'/'` character. The file system view in this package accepts URIs of the following forms:

- `S3://bucket/file`
- `S3://accessKey@bucket/file` (password not allowed in URI)

The separator character for the file components is `'/'` on all platforms. The password and the region can be specified at file system initialization time. The endpoint (e.g. `"s3​.eu-central-1.amazonaws​.com"`) shall not be specified in the URI. In particular, the region (`"eu-central-1"` in the above example) can depend on the server location instead of the data to access, and can be a global configuration for the server.

After a `Path` instance has been created, the following syntax can be used on `Path` methods expecting a `String` argument. The `file` can be a string with `'/'` separators.

- `"S3://bucket/file"`
- `"/bucket/file"` (absolute path)
- `"file"` (relative path)

## Thread safety

All classes provided by this package are safe of usage in multi-threading environment.

Since:
  1.2
See Also:
  - AWS SDK for Java

- Classes
  Class
  Description
  FileService
  A provider of file system services as wrappers around Amazon Simple Storage Service (AWS S3).