1## Design Documentation 2 3### New Features 4 5**In Development** 6 7*Development on these features has started. No date can be shared for 8when these features will be completed, and their end state may vary 9significantly from the state proposed in these documents.* 10 11* [S3 Transfer Manager](services/s3/transfermanager/README.md) - 12 Simplifies uploading and downloading of objects to and from Amazon S3. 13 14**Proposed** 15 16*These features are being proposed for development. These features will 17either transition to "In Development" when development begins, or 18"Rejected" if it is decided that these features will not be implemented. 19No date can be shared for when the fate of these features will be 20decided.* 21 22* [Event Streaming Alternate Syntax](core/event-streaming/alternate-syntax/README.md) 23 \- Simplifies interacting with event streaming services for 24 non-power-users. 25* [Event Streaming Auto-Reconnect](core/event-streaming/reconnect/README.md) 26 \- Automatically reconnects to an event streaming session when they are 27 interrupted by a network error. 28* [Tagged Unions](core/tagged-unions/README.md) 29 \- Usability improvements for union types, like DynamoDB's `AttributeValue`. 30 31**Released** 32 33*These features are considered "mostly implemented". Development on new features 34is never "done". These features are considered "done enough" that any remaining 35design elements or features can be implemented incrementally based on customer 36demand.* 37 38* [Request Presigners](core/presigners/README.md) - Makes it possible to sign 39 requests to be executed at a later time. 40* [Dynamo DB Enhanced Client](services/dynamodb/high-level-library/README.md) 41 \- Simplifies writing and reading objects to and from Amazon DynamoDB. 42 43**Rejected** 44 45None 46 47### Conventions 48 49**Proposed** 50 51None 52 53**Accepted** 54 55* [Class Initialization](FavorStaticFactoryMethods.md) - Conventions 56 used to initialize a class. 57* [Naming Conventions](NamingConventions.md) - Conventions used for 58 class naming. 59* [Client Configuration](ClientConfiguration.md) - Conventions used for 60 client configuration objects. 61* [Optional Usage](UseOfOptional.md) - Conventions governing the use of 62 [java.util.Optional](https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html). 63* [Completable Future Usage](UseOfCompletableFuture.md) - Conventions 64 governing the use of 65 [java.util.concurrent.CompletableFuture](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html). 66* [APIReference](APIReference.md) - Conventions used for API references 67 68**Rejected** 69 70None 71 72