Dynamic Dynamo

Provides higher-level abstractions for DynamoDB using the Amazon AWS Java SDK

License

License

Categories

Categories

AWS Container PaaS Providers
GroupId

GroupId

io.venable.amazonaws
ArtifactId

ArtifactId

dynamic-dynamo
Last Version

Last Version

0.3
Release Date

Release Date

Type

Type

jar
Description

Description

Dynamic Dynamo
Provides higher-level abstractions for DynamoDB using the Amazon AWS Java SDK
Project URL

Project URL

https://github.com/dlvenable/dynamic-dynamo
Source Code Management

Source Code Management

https://github.com/dlvenable/dynamic-dynamo.git

Download dynamic-dynamo

How to add to project

<!-- https://jarcasting.com/artifacts/io.venable.amazonaws/dynamic-dynamo/ -->
<dependency>
    <groupId>io.venable.amazonaws</groupId>
    <artifactId>dynamic-dynamo</artifactId>
    <version>0.3</version>
</dependency>
// https://jarcasting.com/artifacts/io.venable.amazonaws/dynamic-dynamo/
implementation 'io.venable.amazonaws:dynamic-dynamo:0.3'
// https://jarcasting.com/artifacts/io.venable.amazonaws/dynamic-dynamo/
implementation ("io.venable.amazonaws:dynamic-dynamo:0.3")
'io.venable.amazonaws:dynamic-dynamo:jar:0.3'
<dependency org="io.venable.amazonaws" name="dynamic-dynamo" rev="0.3">
  <artifact name="dynamic-dynamo" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.venable.amazonaws', module='dynamic-dynamo', version='0.3')
)
libraryDependencies += "io.venable.amazonaws" % "dynamic-dynamo" % "0.3"
[io.venable.amazonaws/dynamic-dynamo "0.3"]

Dependencies

compile (1)

Group / Artifact Type Version
com.amazonaws : aws-java-sdk-dynamodb jar 1.9.16

test (3)

Group / Artifact Type Version
junit : junit jar 4.12
org.mockito : mockito-core jar 1.10.8
org.hamcrest : hamcrest-integration jar 1.3

Project Modules

There are no modules declared in this project.

Dynamic Dynamo

Provides higher-level abstractions for DynamoDB using the Amazon AWS Java SDK

Deprecated: The AWS Java SDK has much better APIs now. And using CloudFormation to create DynamoDB tables is much better.

Building Tables

One of the primary features of this project is a fluent syntax for creating DynamoDB tables.

Example

new TableBuilder()
        .name("MyGreatNewTable")
        .primary()
            .hash()
                .name("HashId").type(ScalarAttributeType.S)
            .range()
                .name("RangeId").type(ScalarAttributeType.S)
            .readCapacity(2)
            .writeCapacity(2)
            .and()
        .create(amazonDynamoDB);

Table Creator

There is also a utility function to create tables.

TableHelper.createTableIfNecessary(amazonDynamoDD, "MyGreatNewTable", new MyGreatTableDefiner());

private class MyGreatTableDefiner implements TableDefiner
{
    @Override
    public void defineTable(TableBuilder tableBuilder) {
        tableBuilder
          .primary()
              .hash()
                  .name("HashId").type(ScalarAttributeType.S)
              .range()
                  .name("RangeId").type(ScalarAttributeType.S)
              .readCapacity(2)
              .writeCapacity(2)
    }
}

Download

This project is available in Maven Central

repositories {
    mavenCentral()
}

dependencies {
    compile("io.venable.amazonaws:dynamic-dynamo:0.3")
}

Versions

Version
0.3
0.2
0.1