diff --git a/.gitignore b/.gitignore
index 8ffff15b..83bbf2cb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,9 @@ target
pom.xml.releaseBackup
release.properties
+spring-data-dynamodb-examples/src/main/resources/application.properties
+
+
# Package Files #
*.jar
*.war
diff --git a/.travis.settings.xml b/.travis.settings.xml
index 1e4a183a..6d47fbb4 100644
--- a/.travis.settings.xml
+++ b/.travis.settings.xml
@@ -1,7 +1,7 @@
@@ -134,224 +142,255 @@
-
-
-
- org.springframework
- spring-context
-
-
- org.springframework
- spring-tx
-
-
-
-
- org.springframework.data
- spring-data-commons
-
-
-
- org.hibernate.validator
- hibernate-validator
-
-
-
-
- com.amazonaws
- aws-java-sdk-dynamodb
-
-
-
-
- javax.enterprise
- cdi-api
- ${cdi.version}
- compile
-
-
-
-
- org.springframework
- spring-test
- test
-
-
- com.amazonaws
- DynamoDBLocal
- test
-
-
- org.apache.logging.log4j
- log4j-to-slf4j
- test
-
-
- junit
- junit
- test
-
-
- org.mockito
- mockito-core
- test
-
-
- uk.org.lidalia
- slf4j-test
- test
-
-
-
-
- net.revelc.code.formatter
- formatter-maven-plugin
- 2.7.2
-
- LF
-
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.4
org.apache.maven.plugins
maven-enforcer-plugin
-
-
- enforce-java
-
- enforce
-
-
-
-
- 1.8.0
-
-
-
-
-
+ 3.0.0-M2
- org.codehaus.mojo
- build-helper-maven-plugin
- 1.10
+ org.apache.maven.plugins
+ maven-clean-plugin
+ 3.1.0
- maven-checkstyle-plugin
- 2.17
+ org.apache.maven.plugins
+ maven-deploy-plugin
+ 3.0.0-M1
- maven-failsafe-plugin
- 2.19
+ org.apache.maven.plugins
+ maven-install-plugin
+ 3.0.0-M1
- maven-compiler-plugin
- 3.1
+ org.apache.maven.plugins
+ maven-resources-plugin
+ 3.1.0
- maven-surefire-plugin
- 2.20.1
+ org.apache.maven.plugins
+ maven-site-plugin
+ 3.7.1
+ org.apache.maven.plugins
maven-jar-plugin
- 3.0.2
+ 3.1.2
+
+
+
+ true
+
+
+ Spring Data
+ 2.1
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.0.0
-
- org.eclipse.m2e
- lifecycle-mapping
- 1.0.0
-
-
-
-
-
-
- net.revelc.code.formatter
-
-
- formatter-maven-plugin
-
-
- [2.7.2,)
-
-
- validate
-
-
-
-
- true
-
-
-
-
-
-
+ maven-compiler-plugin
+ 3.8.1
+
+
+ -Xlint:unchecked
+ -Xlint:deprecation
+
+
+
+ net.revelc.code.formatter
+ formatter-maven-plugin
+ 2.9.0
+
+ LF
+ ../src/eclipse-java-google-style.xml
+
+
+
+
+ process-resources
+
+ format
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+ 3.0.0
+
+
+ verify-style
+ validate
+
+ check
+
+
+
+
+ true
+ ${project.basedir}/checkstyle.xml
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ 3.1.11
+
+ Max
+
+ Max
+
+ src/spotbugs-exclude.xml
+
+
+
+ verify
+
+ check
+
+
+
+
+
+
+ com.mycila
+ license-maven-plugin
+ 3.0
+
+ com/mycila/maven/plugin/license/templates/APACHE-2.txt
+
+ spring-data-dynamodb
+ ${project.url}
+ 2013-2019
+
+
+ **/README.md
+ **/DONATION.md
+ **/CONTRIBUTING.md
+ **/LICENSE
+ src/test/resources/**
+ src/main/resources/**
+ **/*.psd
+ src/eclipse-java-google-style.xml
+
+
+
+
+
+ format
+
+ validate
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.1.1
+
+
+
+ copy
+ test-compile
+
+ copy
+
+
+
+
+ com.almworks.sqlite4java
+ ${sqlite4java.artifactId}
+ ${sqlite4java.version}
+ ${sqlite4java.type}
+ true
+ ${project.build.directory}/lib
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 3.0.0-M3
+
+
+
+ sqlite4java.library.path
+ ${project.build.directory}/lib
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+ 3.0.0-M3
+
+
+ ${project.build.directory}/lib
+ ${dynamodblocal.port}
+
+
+
+
+ integration-test
+
+ integration-test
+ verify
+
+
+
+
+
-
- org.apache.maven.plugins
- maven-jar-plugin
-
-
-
- true
-
-
- Spring Data
- 2.1
-
-
-
-
-
- maven-compiler-plugin
-
-
- -Xlint:unchecked
- -Xlint:deprecation
-
-
-
-
- com.mycila
- license-maven-plugin
- 3.0
-
- com/mycila/maven/plugin/license/templates/APACHE-2.txt
-
- ${project.artifactId}
- ${project.url}
-
-
- **/README.md
- **/DONATION.md
- **/CONTRIBUTING.md
- **/LICENSE
- src/test/resources/**
- src/main/resources/**
- **/*.psd
- src/eclipse-java-google-style.xml
-
-
-
-
-
- check
-
- validate
-
-
-
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+
+
+ enforce-maven
+
+ enforce
+
+
+
+
+
+ 3.3.9
+
+
+ 1.8.0
+
+
+
+
+
+
org.sonatype.plugins
nexus-staging-maven-plugin
- 1.6.7
+ 1.6.8
true
ossrh
@@ -362,7 +401,6 @@
org.jacoco
jacoco-maven-plugin
- 0.7.9
@@ -377,7 +415,7 @@
- default-check
+ check
test
check
@@ -404,57 +442,7 @@
-
- net.revelc.code.formatter
- formatter-maven-plugin
-
- ${project.basedir}/eclipse-formatter-config.xml
-
-
-
-
- validate
-
-
-
-
-
- org.apache.maven.plugins
- maven-checkstyle-plugin
-
-
- verify-style
- process-resources
-
- check
-
-
-
-
- true
- src/checkstyle.xml
-
-
-
- com.github.spotbugs
- spotbugs-maven-plugin
- 3.1.5
-
- Max
-
- Max
-
- src/spotbugs-exclude.xml
-
-
-
- verify
-
- check
-
-
-
-
+
org.apache.maven.plugins
maven-release-plugin
@@ -474,63 +462,6 @@
-
- org.apache.maven.plugins
- maven-dependency-plugin
-
-
-
- copy
- test-compile
-
- copy
-
-
-
-
- com.almworks.sqlite4java
- ${sqlite4java.artifactId}
- ${sqlite4java.version}
- ${sqlite4java.type}
- true
- ${project.build.directory}/lib
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
-
-
-
- sqlite4java.library.path
- ${project.build.directory}/lib
-
-
-
-
-
- org.apache.maven.plugins
- maven-failsafe-plugin
-
-
- ${project.build.directory}/lib
- ${dynamodblocal.port}
-
-
-
-
- integration-test
-
- integration-test
- verify
-
-
-
-
@@ -543,20 +474,47 @@
- spring-libs-snapshot
- http://repo.springsource.org/libs-snapshot
+ spring-snapshot
+ Spring Snapshots
+ https://repo.spring.io/libs-snapshot
+
+ false
+
+
+ true
+
+
+
+ spring-releases
+ Spring Releases
+ https://repo.spring.io/libs-release
+
+ true
+
+
+ false
+
dynamodb-local-oregon
DynamoDB Local Release Repository
https://s3-us-west-2.amazonaws.com/dynamodb-local/release
+
+ org.jboss.repository.releases
+ JBoss Maven Release Repository
+ https://repository.jboss.org/nexus/content/repositories/releases
+
+ false
+
+
- com.springsource.repository.bundles.release
- http://repository.springsource.com/maven/bundles/release
+ spring-releases
+ Spring Releases
+ https://repo.spring.io/libs-release
false
@@ -628,6 +586,15 @@
dll
+
+
+ ci
+
+
+ env.TRAVIS_CI
+
+
+
release
@@ -648,7 +615,7 @@
org.apache.maven.plugins
maven-javadoc-plugin
- 3.0.0
+ 3.1.0
attach-javadocs
@@ -661,7 +628,7 @@
org.apache.maven.plugins
maven-gpg-plugin
- 1.5
+ 1.6
sign-artifacts
@@ -675,7 +642,6 @@
org.apache.maven.plugins
maven-site-plugin
- 3.7
true
@@ -819,7 +785,7 @@
org.apache.maven.plugins
maven-project-info-reports-plugin
- 2.9
+ 3.0.0
org.apache.maven.plugins
@@ -846,20 +812,28 @@
findbugs-maven-plugin
${findbugs.version}
+
Max
- Low
+ Max
+
+ true
+ ${project.build.directory}/findbugs
org.apache.maven.plugins
maven-jxr-plugin
- 2.3
+ 3.0.0
org.apache.maven.plugins
maven-pmd-plugin
- 3.9.0
+ 3.12.0
true
false
@@ -873,12 +847,18 @@
org.apache.maven.plugins
maven-surefire-report-plugin
- 2.20.1
+ 3.0.0-M3
+
+ spring-data-dynamodb
+ spring-data-dynamodb-boot
+ spring-data-dynamodb-cdi
+ spring-data-dynamodb-examples
+
diff --git a/spring-data-dynamodb-boot/pom.xml b/spring-data-dynamodb-boot/pom.xml
new file mode 100644
index 00000000..0e9e8753
--- /dev/null
+++ b/spring-data-dynamodb-boot/pom.xml
@@ -0,0 +1,69 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-parent
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+
+ spring-data-dynamodb-boot
+ Spring Boot for DynamoDB
+
+
+
+
+ 1.9
+ 1.9
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+ import
+
+
+
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+ ${project.version}
+
+
+
+ junit
+ junit
+ test
+
+
+ org.mockito
+ mockito-core
+ test
+
+
+
+
diff --git a/spring-data-dynamodb-cdi/pom.xml b/spring-data-dynamodb-cdi/pom.xml
new file mode 100644
index 00000000..1edce61c
--- /dev/null
+++ b/spring-data-dynamodb-cdi/pom.xml
@@ -0,0 +1,52 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-parent
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+
+ spring-data-dynamodb-cdi
+ Spring Data DynamoDB - CDI
+
+
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+ ${project.version}
+
+
+
+ junit
+ junit
+ test
+
+
+ org.mockito
+ mockito-core
+ test
+
+
+
+
diff --git a/spring-data-dynamodb-examples/README.md b/spring-data-dynamodb-examples/README.md
new file mode 100644
index 00000000..308498a4
--- /dev/null
+++ b/spring-data-dynamodb-examples/README.md
@@ -0,0 +1,112 @@
+# 📚 Spring Data DynamoDB Examples
+
+Examples for Spring-Data-DynamoDB available at [
github.com/derjust/spring-data-dynamodb](https://github.com/derjust/spring-data-dynamodb)
+
+Please also check the [📖 Wiki](https://github.com/derjust/spring-data-dynamodb/wiki)
+
+The following examples exist and how they can be executed
+
+## 🚀 Simple Repository
+
+This example show the most basic usage also referenced by the [README.md](https://github.com/derjust/spring-data-dynamodb/) of the main project.
+
+Further explanation can be found
+* in the [simple/README.md](simple/README.md)
+* as also the [code](simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple)
+
+## 📗 Multi Repository
+
+This example shows how to use multiple *Spring Data* repository types to access different storage backend.
+
+In this example `DynamoDB` and `JPA-H2` is used.
+
+Further explanation can be found
+* in the [multirepo/README.md](multirepo/README.md)
+* as also the [code](multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo)
+
+### 📜 Code sample
+The respective repository providers must be informed which interface to take care of.
+In a `@Configurable` bean the interfaces have to be assigned via `include`/`exclude` filters:
+
+```java
+@SpringBootApplication
+@EnableJpaRepositories(
+ includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
+ CustomerRepository.class}
+ )}
+)
+@EnableDynamoDBRepositories(
+ includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
+ DeviceRepository.class}
+ )}
+)
+@Configuration
+public class Application {
+```
+
+## 📕 Custom repository methods
+
+This example shows how to use custom methods as part of *Spring Data* repository interfaces to implement custom logic.
+
+Further explanation can be found
+* in the [custom/README.md](custom/README.md)
+* as also the [code](custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom)
+
+
+### 📜 Code sample
+The repository interface is extend by an additional interface. It's implementation is found by the `Impl` suffix in the same package.
+*Spring Data* itself takes care of weaving in the implementation at runtime:
+
+```java
+public interface UserRepository extends CrudRepository, CustomUserRepositoryMethods { }
+
+
+public interface CustomUserRepositoryMethods {
+ User calculateAge(User user);
+}
+
+
+public class CustomUserRepositoryMethodsImpl implements CustomUserRepositoryMethods {
+
+ @Override
+ public User calculateAge(User user) {
+ /* custom code */
+ }
+}
+
+
+
+// Regular method of the repository interface
+User user = userRepository.findOne(id);
+// Custom method available via the interface, too
+userRepository.calculateAge(user);
+
+```
+
+
+## 📘 REST integration
+
+This example shows how to use `spring-data-dynamodb` with `spring-data-rest` to automatically expose CRUD operations on DynamoDB entities via REST endpoints.
+
+Further explanation can be found
+* in the [rest/README.md](rest/README.md)
+* as also the [code](rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest)
+
+### 📜 Code sample
+An additional DynamoDB bean must be registered and injected - everything else happens via auto-configuration:
+
+```java
+@EnableDynamoDBRepositories(
+ mappingContextRef = "dynamoDBMappingContext",
+ basePackageClasses = UserRepository.class)
+
+
+@Bean
+public DynamoDBMappingContext dynamoDBMappingContext() {
+ return new DynamoDBMappingContext();
+}
+
+```
+
diff --git a/spring-data-dynamodb-examples/custom/README.md b/spring-data-dynamodb-examples/custom/README.md
new file mode 100644
index 00000000..bf4b2d87
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/README.md
@@ -0,0 +1,58 @@
+# 📚 Spring Data DynamoDB Examples - 📕 Custom repository methods
+
+This example shows how to use custom methods as part of *Spring Data* repository interfaces to implement custom logic.
+
+Further explanation can be found
+* as also the [code](src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom)
+
+### 📜 Code sample
+The repository interface is extend by an additional interface. It's implementation is found by the `Impl` suffix in the same package.
+*Spring Data* itself takes care of weaving in the implementation at runtime:
+
+```java
+public interface UserRepository extends CrudRepository, CustomUserRepositoryMethods { }
+
+
+public interface CustomUserRepositoryMethods {
+ User calculateAge(User user);
+}
+
+
+public class CustomUserRepositoryMethodsImpl implements CustomUserRepositoryMethods {
+
+ @Override
+ public User calculateAge(User user) {
+ /* custom code */
+ }
+}
+
+
+
+// Regular method of the repository interface
+User user = userRepository.findOne(id);
+// Custom method available via the interface, too
+userRepository.calculateAge(user);
+
+```
+
+### 📝 How to prepare:
+* Update `src/main/resources/application.properties`
+
+| Key | Sample value | Description |
+|------------------------------|----------------------------------------|---------------------------------------------------|
+| `amazon.aws.accesskey` | N/A | AWS accesskey for DynamoDB |
+| `amazon.aws.secretkey` | N/A | AWS secretkey for DynamoDB |
+
+### ▶️ How to run:
+```
+ mvn -pl spring-data-dynamodb-examples/custom --also-make verify
+```
+
+### 📃 Output should look like:
+```
+2018-07-02 00:29:46.360 INFO 13591 --- [lication.main()] c.g.d.s.custom.Application : Table USER found
+2018-07-02 00:29:46.438 INFO 13591 --- [lication.main()] c.g.d.s.custom.Application : Created user: User{id=084941a8-6d1a-41d6-94ee-4412b8ca6d72, firstname='Sebastian', lastname='Mueller', birthday=1970-01-17T22:29:31.154Z, age=0}
+2018-07-02 00:29:46.479 INFO 13591 --- [lication.main()] c.g.d.s.custom.Application : Called custom method: User{id=084941a8-6d1a-41d6-94ee-4412b8ca6d72, firstname='Sebastian', lastname='Mueller', birthday=1970-01-17T22:29:31.154Z, age=48}
+2018-07-02 00:29:46.506 INFO 13591 --- [lication.main()] c.g.d.s.custom.Application : Comparison - Old entity: User{id=084941a8-6d1a-41d6-94ee-4412b8ca6d72, firstname='Sebastian', lastname='Mueller', birthday=1970-01-17T22:29:31.154Z, age=48}
+2018-07-02 00:29:46.506 INFO 13591 --- [lication.main()] c.g.d.s.custom.Application : Comparison - New entity: User{id=084941a8-6d1a-41d6-94ee-4412b8ca6d72, firstname='Sebastian', lastname='Mueller', birthday=1970-01-17T22:29:31.154Z, age=48}
+```
diff --git a/spring-data-dynamodb-examples/custom/pom.xml b/spring-data-dynamodb-examples/custom/pom.xml
new file mode 100644
index 00000000..00195385
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/pom.xml
@@ -0,0 +1,66 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-examples
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+ spring-data-dynamodb-examples-custom
+ Spring Data DynamoDB Custom Example
+
+
+ 1.8
+ 1.8
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter
+
+
+
+ javax.xml.bind
+ jaxb-api
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ com.github.derjust.spring_data_dynamodb_examples.custom.Application
+
+
+
+
+
+
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/Application.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/Application.java
new file mode 100644
index 00000000..27a4b09f
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/Application.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+import java.time.Instant;
+import java.util.Optional;
+import java.util.Random;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@SpringBootApplication
+@Configuration
+@Import(DynamoDBConfig.class)
+public class Application {
+
+ private static final Logger log = LoggerFactory.getLogger(Application.class);
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(Application.class).run(args);
+ }
+
+ @Bean
+ public CommandLineRunner custom(ConfigurableApplicationContext ctx, UserRepository userRepository) {
+ return (args) -> {
+
+ demoCustomInterface(userRepository);
+
+ ctx.close();
+ };
+ }
+
+ private void demoCustomInterface(UserRepository userRepository) {
+
+ // Create user & save it (creates Id)
+ User user = createUser();
+ userRepository.save(user);
+
+ log.info("Created user: {}", user);
+
+ // Call custom method on interface
+ userRepository.calculateAge(user);
+ log.info("Called custom method: {}", user);
+
+ // Reload instance to ensure custom method worked
+ Optional reloadedUser = userRepository.findById(user.getId());
+
+ assert reloadedUser.isPresent();
+
+ log.info("Comparison - Old entity: {}", user);
+ log.info("Comparison - New entity: {}", reloadedUser.get());
+ }
+
+ private User createUser() {
+ User user = new User();
+
+ user.setFirstname("Sebastian");
+ user.setLastname("Mueller");
+
+ Random r = new Random();
+ user.setBirthday(Instant.ofEpochMilli(r.nextInt()));
+
+ return user;
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethods.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethods.java
new file mode 100644
index 00000000..bf28a7d2
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethods.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+public interface CustomUserRepositoryMethods {
+ User calculateAge(User user);
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethodsImpl.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethodsImpl.java
new file mode 100644
index 00000000..aa4b2815
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/CustomUserRepositoryMethodsImpl.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.Period;
+import java.time.ZoneId;
+
+import org.springframework.beans.factory.annotation.Autowired;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+
+@SuppressWarnings("unused") // This class is used as per
+ // https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.custom-implementations
+public class CustomUserRepositoryMethodsImpl implements CustomUserRepositoryMethods {
+
+ private final DynamoDBMapper mapper;
+
+ @Autowired
+ public CustomUserRepositoryMethodsImpl(DynamoDBMapper mapper) {
+ this.mapper = mapper;
+ }
+
+ @Override
+ public User calculateAge(User user) {
+ // Just some javax.time mumbo-jumbo
+ Instant birthday = user.getBirthday();
+ LocalDate now = LocalDate.now();
+ Period age = Period.between(LocalDate.ofInstant(birthday, ZoneId.systemDefault()), now);
+
+ user.setAge(age.getYears());
+ mapper.save(user);
+
+ return user;
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/DynamoDBConfig.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/DynamoDBConfig.java
new file mode 100644
index 00000000..25446649
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/DynamoDBConfig.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import com.amazonaws.auth.AWSCredentialsProvider;
+import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
+import com.amazonaws.regions.Regions;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
+@Configuration
+@EnableDynamoDBRepositories(basePackageClasses = UserRepository.class)
+public class DynamoDBConfig {
+
+ @Bean
+ public AWSCredentialsProvider amazonAWSCredentialsProvider() {
+ // Use any AWSCredentialsProvider you like - or inject
+ // access/secret key via Spring's property mechanism
+ return new DefaultAWSCredentialsProviderChain();
+ }
+
+ @Bean
+ public DynamoDBMapperConfig dynamoDBMapperConfig() {
+ return DynamoDBMapperConfig.DEFAULT;
+ }
+
+ @Bean
+ public DynamoDBMapper dynamoDBMapper(AmazonDynamoDB amazonDynamoDB, DynamoDBMapperConfig config) {
+ return new DynamoDBMapper(amazonDynamoDB, config);
+ }
+
+ @Bean
+ public AmazonDynamoDB amazonDynamoDB(AWSCredentialsProvider amazonAWSCredentialsProvider) {
+ return AmazonDynamoDBClientBuilder.standard().withCredentials(amazonAWSCredentialsProvider)
+ .withRegion(Regions.US_EAST_1).build();
+ }
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/User.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/User.java
new file mode 100644
index 00000000..89e66bad
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/User.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+import java.time.Instant;
+import java.util.UUID;
+
+import org.socialsignin.spring.data.dynamodb.marshaller.Instant2EpocheDynamoDBMarshaller;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAutoGeneratedKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMarshalling;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable;
+
+@DynamoDBTable(tableName = "USER")
+public class User {
+
+ @DynamoDBHashKey
+ @DynamoDBAutoGeneratedKey()
+ private UUID id;
+ private String firstname;
+ private String lastname;
+ @DynamoDBMarshalling(marshallerClass = Instant2EpocheDynamoDBMarshaller.class)
+ private Instant birthday;
+ private long age;
+
+ public UUID getId() {
+ return id;
+ }
+
+ public void setId(UUID id) {
+ this.id = id;
+ }
+
+ public String getFirstname() {
+ return firstname;
+ }
+
+ public void setFirstname(String firstname) {
+ this.firstname = firstname;
+ }
+
+ public String getLastname() {
+ return lastname;
+ }
+
+ public void setLastname(String lastname) {
+ this.lastname = lastname;
+ }
+
+ public Instant getBirthday() {
+ return birthday;
+ }
+
+ public void setBirthday(Instant birthday) {
+ this.birthday = birthday;
+ }
+
+ public long getAge() {
+ return age;
+ }
+
+ public void setAge(long age) {
+ this.age = age;
+ }
+
+ @Override
+ public String toString() {
+ return "User{" + "id=" + id + ", firstname='" + firstname + '\'' + ", lastname='" + lastname + '\''
+ + ", birthday=" + birthday + ", age=" + age + '}';
+ }
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/UserRepository.java b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/UserRepository.java
new file mode 100644
index 00000000..21af79f4
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/java/com/github/derjust/spring_data_dynamodb_examples/custom/UserRepository.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-custom)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.custom;
+
+import java.util.UUID;
+
+import org.socialsignin.spring.data.dynamodb.repository.EnableScan;
+import org.springframework.data.repository.CrudRepository;
+
+@EnableScan
+public interface UserRepository extends CrudRepository, CustomUserRepositoryMethods {
+
+}
diff --git a/spring-data-dynamodb-examples/custom/src/main/resources/application.properties b/spring-data-dynamodb-examples/custom/src/main/resources/application.properties
new file mode 100644
index 00000000..5bd3ad98
--- /dev/null
+++ b/spring-data-dynamodb-examples/custom/src/main/resources/application.properties
@@ -0,0 +1 @@
+spring.data.dynamodb.entity2ddl.auto=create-only
diff --git a/spring-data-dynamodb-examples/multirepo/README.md b/spring-data-dynamodb-examples/multirepo/README.md
new file mode 100644
index 00000000..14b9f056
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/README.md
@@ -0,0 +1,74 @@
+# 📚 Spring Data DynamoDB Examples - 📗 Multi Repository
+
+This example shows how to use multiple *Spring Data* repository types to access different storage backend.
+
+In this example `DynamoDB` and `MySQL` is used.
+
+Further explanation can be found
+* as also the [code](src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo)
+
+
+### 📜 Explanation
+The respective repository providers must be informed which interface to take care of.
+In a `@Configurable` bean the interfaces have to be assigned via `include`/`exclude` filters:
+
+```java
+@SpringBootApplication
+@EnableJpaRepositories(
+ includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
+ CustomerRepository.class}
+ )}
+)
+@EnableDynamoDBRepositories(
+ includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
+ DeviceRepository.class}
+ )}
+)
+@Configuration
+public class Application {
+```
+
+### 📝 How to prepare:
+* Update `src/main/resources/application.properties`
+
+| Key | Sample value | Description |
+|------------------------------|----------------------------------------|---------------------------------------------------|
+| `spring.datasource.url` | `jdbc:mysql://localhost:3306/customer` | MySQL connection url including the database name |
+| `spring.datasource.username` | `root` | MySQL user with `CREATE`/`INSERT`/`SELECT` grants |
+| `spring.datasource.password` | `root` | MySQL user's password |
+| `amazon.aws.accesskey` | N/A | AWS accesskey for DynamoDB |
+| `amazon.aws.secretkey` | N/A | AWS secretkey for DynamoDB |
+
+### ▶️ How to run:
+```
+ mvn -pl spring-data-dynamodb-examples/multirepo --also-make verify
+```
+
+### 📃 Output should look like:
+```
+2018-02-06 23:58:18.738 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customers found with findAll():
+2018-02-06 23:58:18.738 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : -------------------------------
+2018-02-06 23:58:18.910 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=1, firstName='Jack', lastName='Bauer']
+2018-02-06 23:58:18.910 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=2, firstName='Chloe', lastName='O'Brian']
+2018-02-06 23:58:18.910 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=3, firstName='Kim', lastName='Bauer']
+2018-02-06 23:58:18.911 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=4, firstName='David', lastName='Palmer']
+2018-02-06 23:58:18.911 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=5, firstName='Michelle', lastName='Dessler']
+2018-02-06 23:58:18.911 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application :
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer found with findOne(1L):
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : --------------------------------
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=1, firstName='Jack', lastName='Bauer']
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application :
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer found with findByLastName('Bauer'):
+2018-02-06 23:58:18.925 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : --------------------------------------------
+2018-02-06 23:58:18.954 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=1, firstName='Jack', lastName='Bauer']
+2018-02-06 23:58:18.954 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Customer[id=3, firstName='Kim', lastName='Bauer']
+2018-02-06 23:58:18.954 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application :
+2018-02-06 23:58:19.389 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Table Device found
+2018-02-06 23:58:19.537 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Devices found with findAll():
+2018-02-06 23:58:19.538 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : -------------------------------
+2018-02-06 23:58:19.573 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Device[id=DeviceKey[vendorId=2, product='Product CB'], name='C', lastChange='Tue Feb 06 23:58:19 EST 2018']
+2018-02-06 23:58:19.573 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Device[id=DeviceKey[vendorId=1, product='Product A'], name='A', lastChange='Tue Feb 06 23:58:19 EST 2018']
+2018-02-06 23:58:19.574 INFO 14962 --- [lication.main()] c.g.s.examples.multirepo.Application : Device[id=DeviceKey[vendorId=1, product='Product B'], name='B', lastChange='Tue Feb 06 23:58:19 EST 2018']
+```
diff --git a/spring-data-dynamodb-examples/multirepo/pom.xml b/spring-data-dynamodb-examples/multirepo/pom.xml
new file mode 100644
index 00000000..69806563
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/pom.xml
@@ -0,0 +1,67 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-examples
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+ spring-data-dynamodb-examples-multirepo
+ Spring Data DynamoDB Multirepo Example
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-jpa
+
+
+
+ com.h2database
+ h2
+ runtime
+
+
+
+ javax.xml.bind
+ jaxb-api
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ com.github.derjust.spring_data_dynamodb_examples.multirepo.Application
+
+
+
+
+
+
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Application.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Application.java
new file mode 100644
index 00000000..971b40a5
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Application.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import java.util.Date;
+import java.util.Optional;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@SpringBootApplication
+@Configuration
+@Import(DynamoDBConfig.class)
+public class Application {
+
+ private static final Logger log = LoggerFactory.getLogger(Application.class);
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(Application.class).run(args);
+ }
+
+ @Bean
+ public CommandLineRunner multirepo(ConfigurableApplicationContext ctx, CustomerRepository jpaRepository,
+ DeviceRepository dynamoDBRepository) {
+ return (args) -> {
+ demoJPA(jpaRepository);
+
+ // Tables are autocreated
+ demoDynamoDB(dynamoDBRepository);
+
+ ctx.close();
+ };
+ }
+
+ private void demoDynamoDB(DeviceRepository dynamoDBRepository) {
+ // save a couple of devices
+ dynamoDBRepository.save(new Device(1L, "Product A", "A", new Date()));
+ dynamoDBRepository.save(new Device(1L, "Product B", "B", new Date()));
+ dynamoDBRepository.save(new Device(2L, "Product C", "C", new Date()));
+
+ // fetch all devices
+ log.info("Devices found with findAll():");
+ log.info("-------------------------------");
+ for (Device device : dynamoDBRepository.findAll()) {
+ log.info(device.toString());
+ }
+ log.info("");
+
+ }
+
+ private void demoJPA(CustomerRepository jpaRepository) {
+ // save a couple of customers
+ jpaRepository.save(new Customer("Jack", "Bauer"));
+ jpaRepository.save(new Customer("Chloe", "O'Brian"));
+ jpaRepository.save(new Customer("Kim", "Bauer"));
+ jpaRepository.save(new Customer("David", "Palmer"));
+ jpaRepository.save(new Customer("Michelle", "Dessler"));
+
+ // fetch all customers
+ log.info("Customers found with findAll():");
+ log.info("-------------------------------");
+ for (Customer customer : jpaRepository.findAll()) {
+ log.info(customer.toString());
+ }
+ log.info("");
+
+ // fetch an individual customer by ID
+ Optional customer = jpaRepository.findById(1L);
+ log.info("Customer found with findOne(1L):");
+ log.info("--------------------------------");
+ log.info(customer.get().toString());
+ log.info("");
+
+ // fetch customers by last name
+ log.info("Customer found with findByLastName('Bauer'):");
+ log.info("--------------------------------------------");
+ //TODO
+ /*for (Customer bauer : jpaRepository.findByLastName("Bauer")) {
+ log.info(bauer.toString());
+ }*/
+ log.info("");
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Customer.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Customer.java
new file mode 100644
index 00000000..e0f9e8b4
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Customer.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+
+@Entity
+public class Customer {
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.AUTO)
+ private Long id;
+ private String firstName;
+ private String lastName;
+
+ protected Customer() {
+ }
+
+ public Customer(String firstName, String lastName) {
+ this.firstName = firstName;
+ this.lastName = lastName;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+ public void setLastName(String lastName) {
+ this.lastName = lastName;
+ }
+
+ @Override
+ public String toString() {
+ return String.format("Customer[id=%d, firstName='%s', lastName='%s']", id, firstName, lastName);
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/CustomerRepository.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/CustomerRepository.java
new file mode 100644
index 00000000..a020e87d
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/CustomerRepository.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import java.util.List;
+
+import org.springframework.data.repository.CrudRepository;
+
+/** The JPA repository */
+public interface CustomerRepository extends CrudRepository {
+
+ //List findByLastName(String lastName);
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Device.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Device.java
new file mode 100644
index 00000000..096b5045
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/Device.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import java.util.Date;
+
+import org.springframework.data.annotation.Id;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAttribute;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBRangeKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable;
+
+@DynamoDBTable(tableName = "Device")
+public class Device {
+ @Id
+ private DeviceKey key;
+
+ @DynamoDBAttribute(attributeName = "Name")
+ private String name;
+
+ @DynamoDBAttribute(attributeName = "LastChange")
+ private Date lastChange;
+
+ private Device(DeviceKey key, String name, Date lastChange) {
+ this.key = key;
+ this.name = name;
+ this.lastChange = lastChange;
+ }
+
+ public Device(Long vendorId, String productId, String name, Date lastChange) {
+ this(new DeviceKey(vendorId, productId), name, lastChange);
+ }
+
+ public Device() {
+ }
+
+ @DynamoDBHashKey(attributeName = "VendorId")
+ public Long getVendorId() {
+ return (key != null) ? key.getVendorId() : null;
+ }
+
+ public void setVendorId(Long vendorId) {
+ if (key == null) {
+ key = new DeviceKey();
+ }
+ key.setVendorId(vendorId);
+ }
+
+ @DynamoDBRangeKey(attributeName = "ProductId")
+ public String getProductId() {
+ return (key != null) ? key.getProduct() : null;
+ }
+
+ public void setProductId(String product) {
+ if (key == null) {
+ key = new DeviceKey();
+ }
+ key.setProduct(product);
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Date getLastChange() {
+ return lastChange;
+ }
+
+ public void setLastChange(Date lastChange) {
+ this.lastChange = lastChange;
+ }
+
+ @Override
+ public String toString() {
+ return String.format("Device[id=%s, name='%s', lastChange='%s']", key, name, lastChange);
+ }
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceKey.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceKey.java
new file mode 100644
index 00000000..c55fdf17
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceKey.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import java.io.Serializable;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBRangeKey;
+
+public class DeviceKey implements Serializable {
+
+ private Long vendorId;
+
+ private String product;
+
+ public DeviceKey() {
+ }
+
+ public DeviceKey(Long vendorIr, String product) {
+ this.vendorId = vendorIr;
+ this.product = product;
+ }
+
+ @DynamoDBHashKey
+ public Long getVendorId() {
+ return vendorId;
+ }
+
+ public void setVendorId(Long vendorId) {
+ this.vendorId = vendorId;
+ }
+
+ @DynamoDBRangeKey
+ public String getProduct() {
+ return product;
+ }
+
+ public void setProduct(String product) {
+ this.product = product;
+ }
+
+ @Override
+ public String toString() {
+ return String.format("DeviceKey[vendorId=%d, product='%s']", vendorId, product);
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceRepository.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceRepository.java
new file mode 100644
index 00000000..f6ec2615
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DeviceRepository.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import java.util.List;
+
+import org.socialsignin.spring.data.dynamodb.repository.EnableScan;
+import org.springframework.data.repository.CrudRepository;
+
+/** The DynamoDB repository */
+@EnableScan
+public interface DeviceRepository extends CrudRepository {
+
+ List findAll();
+
+}
\ No newline at end of file
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DynamoDBConfig.java b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DynamoDBConfig.java
new file mode 100644
index 00000000..28bf70f0
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/java/com/github/derjust/spring_data_dynamodb_examples/multirepo/DynamoDBConfig.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-multirepo)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.multirepo;
+
+import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.FilterType;
+import org.springframework.context.annotation.Primary;
+import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+
+import com.amazonaws.auth.AWSCredentialsProvider;
+import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
+import com.amazonaws.regions.Regions;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
+@Configuration
+@EnableJpaRepositories(includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {CustomerRepository.class})})
+@EnableDynamoDBRepositories(includeFilters = {
+ @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {DeviceRepository.class})})
+public class DynamoDBConfig {
+
+ public AWSCredentialsProvider amazonAWSCredentialsProvider() {
+ // Use any AWSCredentialsProvider you like - or inject
+ // access/secret key via Spring's property mechanism
+ return new DefaultAWSCredentialsProviderChain();
+ }
+
+ @Primary
+ @Bean
+ public DynamoDBMapperConfig dynamoDBMapperConfig() {
+ return DynamoDBMapperConfig.DEFAULT;
+ }
+
+ @Primary
+ @Bean
+ public DynamoDBMapper dynamoDBMapper32(AmazonDynamoDB amazonDynamoDB, DynamoDBMapperConfig config) {
+ return new DynamoDBMapper(amazonDynamoDB, config);
+ }
+
+ @Bean
+ public AmazonDynamoDB amazonDynamoDB() {
+ return AmazonDynamoDBClientBuilder.standard().withCredentials(amazonAWSCredentialsProvider())
+ .withRegion(Regions.US_EAST_1).build();
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/multirepo/src/main/resources/application.properties b/spring-data-dynamodb-examples/multirepo/src/main/resources/application.properties
new file mode 100644
index 00000000..2a91c25e
--- /dev/null
+++ b/spring-data-dynamodb-examples/multirepo/src/main/resources/application.properties
@@ -0,0 +1,6 @@
+spring.data.dynamodb.entity2ddl.auto=create-only
+
+spring.datasource.url=jdbc:h2:mem:customerdb
+
+# Enabling H2 Console
+spring.h2.console.enabled=true
diff --git a/spring-data-dynamodb-examples/pom.xml b/spring-data-dynamodb-examples/pom.xml
new file mode 100644
index 00000000..0fe0abcd
--- /dev/null
+++ b/spring-data-dynamodb-examples/pom.xml
@@ -0,0 +1,122 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-parent
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+ spring-data-dynamodb-examples
+ pom
+ Spring Data DynamoDB Examples
+
+ Examples for Spring-Data-DynamoDB available at https://github.com/derjust/spring-data-dynamodb/
+
+
+ 1.9
+ 1.9
+ verify
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ 2.0.3.RELEASE
+ pom
+ import
+
+
+
+ javax.xml.bind
+ jaxb-api
+ 2.3.0
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+ ${project.version}
+
+
+
+
+
+
+
+
+ net.revelc.code.formatter
+ formatter-maven-plugin
+
+ ../../src/eclipse-java-google-style.xml
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 1.6.0
+
+
+ exec
+ ${exec-phase}
+
+ java
+
+
+
+
+
+
+
+
+ maven-surefire-plugin
+
+ true
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
+ check
+ none
+
+
+ report
+ none
+
+
+
+
+
+
+
+ simple
+ custom
+ multirepo
+ rest
+
+
+
diff --git a/spring-data-dynamodb-examples/rest/README.md b/spring-data-dynamodb-examples/rest/README.md
new file mode 100644
index 00000000..86ff9ac2
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/README.md
@@ -0,0 +1,56 @@
+# 📚 Spring Data DynamoDB Examples - 📘 REST integration
+
+This example shows how to use `spring-data-dynamodb` with `spring-data-rest` to automatically expose CRUD operations on DynamoDB entities via REST endpoints.
+
+Further explanation can be found
+* as also the [code](src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest)
+
+### 📜 Code sample
+
+
+```java
+
+@EnableDynamoDBRepositories(
+ mappingContextRef = "dynamoDBMappingContext",
+ includeFilters = {@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
+ UserRepository.class}
+ )}
+)
+
+
+@Bean
+public DynamoDBMappingContext dynamoDBMappingContext() {
+ return new DynamoDBMappingContext();
+}
+
+```
+
+
+### 📝 How to prepare:
+* Update `src/main/resources/application.properties`
+
+| Key | Sample value | Description |
+|------------------------------|----------------------------------------|---------------------------------------------------|
+| `amazon.aws.accesskey` | N/A | AWS accesskey for DynamoDB |
+| `amazon.aws.secretkey` | N/A | AWS secretkey for DynamoDB |
+
+### ▶️ How to run:
+```
+ mvn -pl spring-data-dynamodb-examples/rest --also-make verify
+```
+
+### 📃 Output should look like:
+```
+2018-07-02 19:20:42.300 INFO 22828 --- [lication.main()] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
+2018-07-02 19:20:42.304 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : Started Application in 4.645 seconds (JVM running for 8.315)
+2018-07-02 19:20:42.789 INFO 22828 --- [lication.main()] c.g.d.s.common.DynamoDBConfig : Table Device found
+2018-07-02 19:20:42.900 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : Users found with findAll():
+2018-07-02 19:20:42.900 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : -------------------------------
+2018-07-02 19:20:42.941 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : User{id=034446ed-e6f1-45bd-9de2-a4d7867e01c9, firstname='you', lastname='you'}
+2018-07-02 19:20:42.941 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : User{id=da5966e8-ded5-425d-8ddf-df8ac49093e1, firstname='me', lastname='me'}
+2018-07-02 19:20:42.944 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application :
+2018-07-02 19:20:42.944 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application :
+2018-07-02 19:20:42.944 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : Run curl -v http://localhost:8080/users and follow the HATEOS links
+2018-07-02 19:20:42.944 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application :
+2018-07-02 19:20:42.944 INFO 22828 --- [lication.main()] c.g.d.s.rest.Application : Press to shutdown
+```
diff --git a/spring-data-dynamodb-examples/rest/pom.xml b/spring-data-dynamodb-examples/rest/pom.xml
new file mode 100644
index 00000000..dcb5910e
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/pom.xml
@@ -0,0 +1,86 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-examples
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+ spring-data-dynamodb-examples-rest
+ Spring Data DynamoDB REST Example
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.springframework.data
+ spring-data-rest-webmvc
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+
+ javax.xml.bind
+ jaxb-api
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ com.github.derjust.spring_data_dynamodb_examples.rest.Application
+
+
+
+ exec
+ none
+
+
+
+
+
+
+
+
+ ci
+
+ none
+
+
+
+
+
diff --git a/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/Application.java b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/Application.java
new file mode 100644
index 00000000..f9c7be72
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/Application.java
@@ -0,0 +1,75 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-rest)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.rest;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.boot.WebApplicationType;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
+@SpringBootApplication
+@Configuration
+@Import({DynamoDBConfig.class})
+public class Application {
+
+ private static final Logger log = LoggerFactory.getLogger(Application.class);
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(Application.class).web(WebApplicationType.SERVLET).run(args);
+ }
+
+ @Bean
+ public CommandLineRunner rest(ConfigurableApplicationContext ctx, UserRepository dynamoDBRepository,
+ AmazonDynamoDB amazonDynamoDB, DynamoDBMapper dynamoDBMapper, DynamoDBMapperConfig config) {
+ return (args) -> {
+
+ createEntities(dynamoDBRepository);
+
+ log.info("");
+ log.info("Run curl -v http://localhost:8080/users and follow the HATEOS links");
+ log.info("");
+ log.info("Press to shutdown");
+ System.in.read();
+ ctx.close();
+ };
+ }
+
+ private void createEntities(UserRepository dynamoDBRepository) {
+ // save a couple of devices
+ dynamoDBRepository.save(new User("me", "me"));
+ dynamoDBRepository.save(new User("you", "you"));
+
+ // fetch all devices
+ log.info("Users found with findAll():");
+ log.info("-------------------------------");
+ for (User user : dynamoDBRepository.findAll()) {
+ log.info(user.toString());
+ }
+ log.info("");
+
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/DynamoDBConfig.java b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/DynamoDBConfig.java
new file mode 100644
index 00000000..854dfacf
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/DynamoDBConfig.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-rest)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.rest;
+
+import org.socialsignin.spring.data.dynamodb.mapping.DynamoDBMappingContext;
+import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import com.amazonaws.auth.AWSCredentialsProvider;
+import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
+import com.amazonaws.regions.Regions;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
+@Configuration
+@EnableDynamoDBRepositories(mappingContextRef = "dynamoDBMappingContext", basePackageClasses = UserRepository.class)
+public class DynamoDBConfig {
+
+ public AWSCredentialsProvider amazonAWSCredentialsProvider() {
+ // Use any AWSCredentialsProvider you like - or inject
+ // access/secret key via Spring's property mechanism
+ return new DefaultAWSCredentialsProviderChain();
+ }
+
+ @Bean
+ public DynamoDBMapperConfig dynamoDBMapperConfig() {
+ return DynamoDBMapperConfig.DEFAULT;
+ }
+
+ @Bean
+ public DynamoDBMapper dynamoDBMapper(AmazonDynamoDB amazonDynamoDB, DynamoDBMapperConfig config) {
+ return new DynamoDBMapper(amazonDynamoDB, config);
+ }
+
+ @Bean
+ public AmazonDynamoDB amazonDynamoDB() {
+ return AmazonDynamoDBClientBuilder.standard()
+ .withCredentials(amazonAWSCredentialsProvider())
+ .withRegion(Regions.US_EAST_1).build();
+ }
+
+ @Bean
+ public DynamoDBMappingContext dynamoDBMappingContext() {
+ return new DynamoDBMappingContext();
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/User.java b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/User.java
new file mode 100644
index 00000000..fe261c8d
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/User.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-rest)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.rest;
+
+import java.util.UUID;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAutoGeneratedKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable;
+
+@DynamoDBTable(tableName = "USER")
+public class User {
+
+ @DynamoDBHashKey
+ @DynamoDBAutoGeneratedKey()
+ private UUID id;
+ private String firstname;
+ private String lastname;
+
+ public User(String firstname, String lastname) {
+ this.firstname = firstname;
+ this.lastname = lastname;
+ }
+
+ public User() {
+
+ }
+
+ public UUID getId() {
+ return id;
+ }
+
+ public void setId(UUID id) {
+ this.id = id;
+ }
+
+ public String getFirstname() {
+ return firstname;
+ }
+
+ public void setFirstname(String firstname) {
+ this.firstname = firstname;
+ }
+
+ public String getLastname() {
+ return lastname;
+ }
+
+ public void setLastname(String lastname) {
+ this.lastname = lastname;
+ }
+
+ @Override
+ public String toString() {
+ return "User{" + "id=" + id + ", firstname='" + firstname + '\'' + ", lastname='" + lastname + '\'' + '}';
+ }
+}
diff --git a/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/UserRepository.java b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/UserRepository.java
new file mode 100644
index 00000000..c0ccbcea
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/src/main/java/com/github/derjust/spring_data_dynamodb_examples/rest/UserRepository.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-rest)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.rest;
+
+import java.util.UUID;
+
+import org.socialsignin.spring.data.dynamodb.repository.EnableScan;
+import org.springframework.data.repository.CrudRepository;
+
+@EnableScan()
+public interface UserRepository extends CrudRepository {
+
+}
diff --git a/spring-data-dynamodb-examples/rest/src/main/resources/application.properties b/spring-data-dynamodb-examples/rest/src/main/resources/application.properties
new file mode 100644
index 00000000..5bd3ad98
--- /dev/null
+++ b/spring-data-dynamodb-examples/rest/src/main/resources/application.properties
@@ -0,0 +1 @@
+spring.data.dynamodb.entity2ddl.auto=create-only
diff --git a/spring-data-dynamodb-examples/simple/README.md b/spring-data-dynamodb-examples/simple/README.md
new file mode 100644
index 00000000..661b1d0d
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/README.md
@@ -0,0 +1,104 @@
+# 📚 Spring Data DynamoDB Examples - 🚀 Simple Repository
+
+This example shows how to use custom methods as part of *Spring Data* repository interfaces to implement custom logic.
+
+Further explanation can be found
+* as also the [code](src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple)
+
+### 📜 Code sample
+The repository interface defines the query method
+
+```java
+@EnableScan
+public interface UserRepository extends CrudRepository {
+ List findByLastName(String lastName);
+}
+```
+
+for a respective entity class
+
+```java
+@DynamoDBTable(tableName = "User")
+public class User {
+
+ private String id;
+ private String firstName;
+ private String lastName;
+
+ public User() {
+ // Default constructor is required by AWS DynamoDB SDK
+ }
+
+ public User(String firstName, String lastName) {
+ this.firstName = firstName;
+ this.lastName = lastName;
+ }
+
+ @DynamoDBHashKey
+ @DynamoDBAutoGeneratedKey
+ public String getId() {
+ return id;
+ }
+
+ @DynamoDBAttribute
+ public String getFirstName() {
+ return firstName;
+ }
+
+ @DynamoDBAttribute
+ public String getLastName() {
+ return lastName;
+ }
+
+ // setters skipped
+}
+```
+
+and used
+
+```java
+ @Autowired
+ private UserRepository repository;
+
+ @Test
+ public void sampleTestCase() {
+ User gosling = new User("James", "Gosling");
+ repository.save(gosling);
+
+ User hoeller = new User("Juergen", "Hoeller");
+ repository.save(hoeller);
+
+ List result = repository.findByLastName("Gosling");
+ Assert.assertThat(result.size(), is(1));
+ Assert.assertThat(result, hasItem(gosling));
+ log.info("Found in table: {}", result.get(0));
+ }
+```
+
+### 📝 How to prepare:
+* Update `src/main/resources/application.properties`
+
+| Key | Sample value | Description |
+|------------------------------|----------------------------------------|---------------------------------------------------|
+| `amazon.aws.accesskey` | N/A | AWS accesskey for DynamoDB |
+| `amazon.aws.secretkey` | N/A | AWS secretkey for DynamoDB |
+
+### ▶️ How to run:
+```
+ mvn -pl spring-data-dynamodb-examples/simple --also-make verify
+```
+
+### 📃 Output should look like:
+```
+2018-10-10 00:56:22.055 INFO 3174 --- [ main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
+2018-10-10 00:56:22.561 INFO 3174 --- [ main] o.s.s.d.d.r.s.DynamoDBRepositoryFactory : Spring Data DynamoDB Version: 5.0.3-SNAPSHOT (2.0)
+2018-10-10 00:56:22.562 INFO 3174 --- [ main] o.s.s.d.d.r.s.DynamoDBRepositoryFactory : Spring Data Version: 2.0.8.RELEASE
+2018-10-10 00:56:22.562 INFO 3174 --- [ main] o.s.s.d.d.r.s.DynamoDBRepositoryFactory : AWS SDK Version: 1.11.301
+2018-10-10 00:56:22.562 INFO 3174 --- [ main] o.s.s.d.d.r.s.DynamoDBRepositoryFactory : Java Version: 9.0.1 - Java HotSpot(TM) 64-Bit Server VM 9.0.1+11
+2018-10-10 00:56:22.562 INFO 3174 --- [ main] o.s.s.d.d.r.s.DynamoDBRepositoryFactory : Platform Details: Mac OS X 10.14
+2018-10-10 00:56:22.696 INFO 3174 --- [ main] c.g.d.s.simple.UserRepositoryIT : Started UserRepositoryIT in 1.236 seconds (JVM running for 1.997)
+2018-10-10 00:56:23.165 INFO 3174 --- [ main] c.g.d.s.simple.UserRepositoryIT : Created table User
+2018-10-10 00:56:43.223 INFO 3174 --- [ main] c.g.d.s.simple.UserRepositoryIT : Table User is active
+2018-10-10 00:56:43.346 INFO 3174 --- [ main] c.g.d.s.simple.UserRepositoryIT : Found in table: User [id=7296cf2a-ac68-4a59-9bb4-b1cc3278715a, firstName=James, lastName=Gosling]
+2018-10-10 00:56:43.391 INFO 3174 --- [ main] c.g.d.s.simple.UserRepositoryIT : Deleted table User
+```
diff --git a/spring-data-dynamodb-examples/simple/pom.xml b/spring-data-dynamodb-examples/simple/pom.xml
new file mode 100644
index 00000000..3f9da714
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/pom.xml
@@ -0,0 +1,72 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-examples
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+ spring-data-dynamodb-examples-simple
+ Spring Data DynamoDB Simple Example
+
+
+ 1.8
+ 1.8
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+ javax.xml.bind
+ jaxb-api
+
+
+
+ com.github.derjust
+ spring-data-dynamodb
+
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+
+ com.github.derjust.spring_data_dynamodb_examples.simple.Application
+
+
+
+
+
+
diff --git a/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/Application.java b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/Application.java
new file mode 100644
index 00000000..9c436f07
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/Application.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@SpringBootApplication
+@Configuration
+@Import({DynamoDBConfig.class})
+public class Application {
+
+ private static final Logger log = LoggerFactory.getLogger(Application.class);
+
+ public static void main(String[] args) {
+ new SpringApplicationBuilder(Application.class).run(args);
+ }
+
+ @Bean
+ public CommandLineRunner simple(ConfigurableApplicationContext ctx, UserRepository dynamoDBRepository) {
+ return (args) -> {
+
+ // save a couple of devices
+ dynamoDBRepository.save(new User("me", "me"));
+ dynamoDBRepository.save(new User("you", "you"));
+
+ // fetch all devices
+ log.info("Users found with findAll():");
+ log.info("-------------------------------");
+ for (User user : dynamoDBRepository.findAll()) {
+ log.info(user.toString());
+ }
+ log.info("");
+
+ ctx.close();
+ };
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/DynamoDBConfig.java b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/DynamoDBConfig.java
new file mode 100644
index 00000000..8db900a7
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/DynamoDBConfig.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import com.amazonaws.auth.AWSCredentialsProvider;
+import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;
+import com.amazonaws.regions.Regions;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
+
+@Configuration
+@EnableDynamoDBRepositories(basePackageClasses = UserRepository.class)
+public class DynamoDBConfig {
+
+ @Bean
+ public AWSCredentialsProvider amazonAWSCredentialsProvider() {
+ // Use any AWSCredentialsProvider you like - or inject
+ // access/secret key via Spring's property mechanism
+ return new DefaultAWSCredentialsProviderChain();
+ }
+
+ @Bean
+ public AmazonDynamoDB amazonDynamoDB(AWSCredentialsProvider amazonAWSCredentialsProvider) {
+ return AmazonDynamoDBClientBuilder.standard()
+ .withCredentials(amazonAWSCredentialsProvider)
+ .withRegion(Regions.US_EAST_1).build();
+ }
+
+}
diff --git a/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/PagingUserRepository.java b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/PagingUserRepository.java
new file mode 100644
index 00000000..d2708e72
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/PagingUserRepository.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.socialsignin.spring.data.dynamodb.repository.EnableScan;
+import org.socialsignin.spring.data.dynamodb.repository.EnableScanCount;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.repository.PagingAndSortingRepository;
+
+public interface PagingUserRepository extends PagingAndSortingRepository {
+ Page findByLastName(String lastName, Pageable pageable);
+
+ @EnableScan
+ @EnableScanCount
+ Page findAll(Pageable pageable);
+
+ @EnableScan
+ List findByIdIn(Collection id);
+
+
+}
\ No newline at end of file
diff --git a/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/User.java b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/User.java
new file mode 100644
index 00000000..70476333
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/User.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import java.util.Arrays;
+import java.util.Objects;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAttribute;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBAutoGeneratedKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBHashKey;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBTable;
+
+@DynamoDBTable(tableName = "User")
+public class User {
+
+ private String id;
+ private String firstName;
+ private String lastName;
+
+ public User() {
+ // Default constructor is required by AWS DynamoDB SDK
+ }
+
+ public User(String firstName, String lastName) {
+ this.firstName = firstName;
+ this.lastName = lastName;
+ }
+
+ @DynamoDBHashKey
+ @DynamoDBAutoGeneratedKey
+ public String getId() {
+ return id;
+ }
+
+ @DynamoDBAttribute
+ public String getFirstName() {
+ return firstName;
+ }
+
+ @DynamoDBAttribute
+ public String getLastName() {
+ return lastName;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public void setLastName(String lastName) {
+ this.lastName = lastName;
+ }
+
+ @Override
+ public String toString() {
+ return "User [id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + "]";
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(firstName, id, lastName);
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ User other = (User) obj;
+ return Arrays.deepEquals(new Object[]{firstName, id, lastName},
+ new Object[]{other.firstName, other.id, other.lastName});
+ }
+
+}
\ No newline at end of file
diff --git a/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepository.java b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepository.java
new file mode 100644
index 00000000..7c585bb0
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepository.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import java.util.List;
+
+import org.socialsignin.spring.data.dynamodb.repository.EnableScan;
+import org.springframework.data.repository.CrudRepository;
+
+@EnableScan
+public interface UserRepository extends CrudRepository {
+ List findByLastName(String lastName);
+}
\ No newline at end of file
diff --git a/spring-data-dynamodb-examples/simple/src/main/resources/application.properties b/spring-data-dynamodb-examples/simple/src/main/resources/application.properties
new file mode 100644
index 00000000..5bd3ad98
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/main/resources/application.properties
@@ -0,0 +1 @@
+spring.data.dynamodb.entity2ddl.auto=create-only
diff --git a/spring-data-dynamodb-examples/simple/src/test/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepositoryIT.java b/spring-data-dynamodb-examples/simple/src/test/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepositoryIT.java
new file mode 100644
index 00000000..09508a6f
--- /dev/null
+++ b/spring-data-dynamodb-examples/simple/src/test/java/com/github/derjust/spring_data_dynamodb_examples/simple/UserRepositoryIT.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb-examples/spring-data-dynamodb-examples-simple)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.github.derjust.spring_data_dynamodb_examples.simple;
+
+import java.util.List;
+
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.socialsignin.spring.data.dynamodb.repository.config.EnableDynamoDBRepositories;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import com.amazonaws.auth.AWSCredentials;
+import com.amazonaws.auth.AWSCredentialsProvider;
+import com.amazonaws.auth.AWSStaticCredentialsProvider;
+import com.amazonaws.auth.BasicAWSCredentials;
+import com.amazonaws.regions.Regions;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+import com.amazonaws.services.dynamodbv2.model.DeleteTableRequest;
+import com.amazonaws.services.dynamodbv2.util.TableUtils;
+
+import static org.hamcrest.Matchers.*;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest(classes = {PropertyPlaceholderAutoConfiguration.class, UserRepositoryIT.DynamoDBConfig.class})
+public class UserRepositoryIT {
+ private static final Logger log = LoggerFactory.getLogger(UserRepositoryIT.class);
+
+ @Configuration
+ @EnableDynamoDBRepositories(basePackageClasses = UserRepository.class)
+ public static class DynamoDBConfig {
+
+ @Value("${amazon.aws.accesskey}")
+ private String amazonAWSAccessKey;
+
+ @Value("${amazon.aws.secretkey}")
+ private String amazonAWSSecretKey;
+
+ public AWSCredentialsProvider amazonAWSCredentialsProvider() {
+ return new AWSStaticCredentialsProvider(amazonAWSCredentials());
+ }
+
+ @Bean
+ public AWSCredentials amazonAWSCredentials() {
+ return new BasicAWSCredentials(amazonAWSAccessKey, amazonAWSSecretKey);
+ }
+
+ @Bean
+ public DynamoDBMapperConfig dynamoDBMapperConfig() {
+ return DynamoDBMapperConfig.DEFAULT;
+ }
+
+ @Bean
+ public DynamoDBMapper dynamoDBMapper(AmazonDynamoDB amazonDynamoDB, DynamoDBMapperConfig config) {
+ return new DynamoDBMapper(amazonDynamoDB, config);
+ }
+
+ @Bean
+ public AmazonDynamoDB amazonDynamoDB() {
+ return AmazonDynamoDBClientBuilder.standard().withCredentials(amazonAWSCredentialsProvider())
+ .withRegion(Regions.US_EAST_1).build();
+ }
+ }
+
+ @Autowired
+ private UserRepository repository;
+
+ @Test
+ public void sampleTestCase() {
+ User gosling = new User("James", "Gosling");
+ repository.save(gosling);
+
+ User hoeller = new User("Juergen", "Hoeller");
+ repository.save(hoeller);
+
+ List result = repository.findByLastName("Gosling");
+ Assert.assertThat(result.size(), is(1));
+ Assert.assertThat(result, hasItem(gosling));
+ log.info("Found in table: {}", result.get(0));
+ }
+
+ @Autowired
+ private AmazonDynamoDB amazonDynamoDB;
+ @Autowired
+ private DynamoDBMapper mapper;
+ private boolean tableWasCreatedForTest;
+
+ @After
+ public void destroy() throws Exception {
+ if (tableWasCreatedForTest) {
+ DeleteTableRequest dtr = mapper.generateDeleteTableRequest(User.class);
+ TableUtils.deleteTableIfExists(amazonDynamoDB, dtr);
+ log.info("Deleted table {}", dtr.getTableName());
+ }
+ }
+}
diff --git a/spring-data-dynamodb/pom.xml b/spring-data-dynamodb/pom.xml
new file mode 100755
index 00000000..186b32d5
--- /dev/null
+++ b/spring-data-dynamodb/pom.xml
@@ -0,0 +1,121 @@
+
+
+
+ 4.0.0
+
+ com.github.derjust
+ spring-data-dynamodb-parent
+ 5.1.1-SNAPSHOT
+ ../pom.xml
+
+
+ spring-data-dynamodb
+ Spring Data DynamoDB
+
+
+
+
+ org.springframework
+ spring-context
+
+
+ org.springframework
+ spring-tx
+
+
+
+
+ org.springframework.data
+ spring-data-commons
+
+
+
+ org.hibernate.validator
+ hibernate-validator
+
+
+
+
+ com.amazonaws
+ aws-java-sdk-dynamodb
+
+
+
+
+ javax.enterprise
+ cdi-api
+ ${cdi.version}
+ compile
+
+
+
+
+ org.springframework
+ spring-test
+ test
+
+
+ com.amazonaws
+ DynamoDBLocal
+ test
+
+
+ org.apache.logging.log4j
+ log4j-to-slf4j
+ test
+
+
+ org.tuxdude.logback.extensions
+ logback-colorizer
+ test
+
+
+ uk.org.lidalia
+ slf4j-test
+ test
+
+
+ junit
+ junit
+ test
+
+
+ org.mockito
+ mockito-core
+ test
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+
+
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java
index 23de4474..ee458b88 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/AbstractDynamoDBConfiguration.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java
index 3743ae5e..684dd08a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/BeanNames.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java
index 787acb36..96ef5e62 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParser.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java
index 24942a96..bd25616d 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrar.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java
index 521313ee..4081fa54 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/config/EnableDynamoDBAuditing.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java
similarity index 95%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java
index 86bf9944..fd2f9af2 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBOperations.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java
index a31d0cd7..6c889119 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplate.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java
index f8d0a8d7..9ab0d74c 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java
index 6006b1fb..8beee08e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchDeleteException.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java
index 6ce185c2..da27ca33 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/exception/BatchWriteException.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java
index 320680e0..e0e07522 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/AbstractDynamoDBDateMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java
similarity index 92%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java
index bc885dd2..ddc8b27d 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java
index 446feff1..53e29d80 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContext.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java
similarity index 88%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java
index 6868a800..8bb05335 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntity.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java
similarity index 95%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java
index d04f2bc2..1823ec4e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java
index f85562c8..dd495adb 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentProperty.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java
index 55b88874..224a5bf5 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java
index 7873d5d6..8699ce97 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListener.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java
similarity index 88%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java
index 6758f744..d4a3eab9 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterDeleteEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java
index 34d714a4..e6bd286e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterLoadEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java
index e59502af..47cf447d 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterQueryEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java
index 0c14fc61..f6943e95 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterSaveEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java
index 03acbe56..3cc1f206 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AfterScanEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java
index a1f946f2..a0c3c380 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/AuditingEventListener.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java
similarity index 88%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java
index 5e790ee2..4ea73820 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeDeleteEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java
index 9eba570c..30c3d6c2 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/BeforeSaveEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java
index 1c13ca3e..672b1315 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/DynamoDBMappingEvent.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java
index 35a9c07f..43597d81 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListener.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java
index d610a957..5d5e4174 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListener.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java
similarity index 92%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java
index e8ed42a0..a1fd8b07 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java
similarity index 90%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java
index db76d22d..94327ab7 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java
index f1018335..bece984e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/DateDynamoDBMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java
index ae7c016a..a67e55ab 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java
index 6372c38e..373c0837 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java
index 9fb25af2..3d8e9eaf 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java
similarity index 92%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java
index 426d1f49..ad9cbc69 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java
index 10e6d679..83d5b7c0 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java
similarity index 90%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java
index 02612143..407d2982 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java
index a7743d92..c123b98b 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java
index 7994c815..a80affc3 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java
index 806ab34f..bb059aad 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryExpressionQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java
index 8b12e7c9..5122efe3 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityQueryRequestQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java
index c42805fd..964ee7e1 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/MultipleEntityScanExpressionQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java
index 03d48f44..4ab41bc8 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/Query.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java
similarity index 92%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java
index 66cee462..affa507d 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java
index f7802974..7830fd02 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java
similarity index 95%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java
index af9a4519..e2f493ae 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java
index 7e17543d..d530b454 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashAndRangeKeyQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java
similarity index 90%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java
index cfb6011f..7cc2ac1e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/SingleEntityLoadByHashKeyQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java
index e7d21e41..b4be4c92 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/query/StaticQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java
index 9818a176..2d0364a3 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBCrudRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java
index eaf91edf..18c65a38 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKey.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java
index ec187b46..b9d36a56 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBPagingAndSortingRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java
index 3fc76e51..bb1c7ecf 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScan.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java
index 09a26321..98ca5875 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/EnableScanCount.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java
index 02284822..c0eea5b7 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/Query.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java
similarity index 86%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java
index 313a7094..6d3d4b90 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/QueryConstants.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java
index 5104a68f..d2ce66ed 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBean.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java
index 9c7c915a..2e3495fc 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryExtension.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java
similarity index 85%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java
index 20b51ffa..02351100 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/cdi/package-info.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java
new file mode 100644
index 00000000..32e2246a
--- /dev/null
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.socialsignin.spring.data.dynamodb.repository.config;
+
+import org.springframework.beans.factory.FactoryBean;
+
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
+public class DynamoDBMapperConfigFactory implements FactoryBean {
+
+ @Override
+ public DynamoDBMapperConfig getObject() throws Exception {
+ return DynamoDBMapperConfig.DEFAULT;
+ }
+
+ @Override
+ public Class> getObjectType() {
+ return DynamoDBMapperConfig.class;
+ }
+
+}
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessor.java
similarity index 85%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessor.java
index 36340e56..68519027 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactory.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,25 +18,13 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
-import org.springframework.beans.factory.FactoryBean;
import org.springframework.beans.factory.config.BeanPostProcessor;
-import org.springframework.lang.Nullable;
import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
-public class DynamoDBMapperConfigFactory implements FactoryBean, BeanPostProcessor {
- private static final Logger LOGGER = LoggerFactory.getLogger(DynamoDBMapperConfigFactory.class);
- @Override
- public DynamoDBMapperConfig getObject() throws Exception {
- return DynamoDBMapperConfig.DEFAULT;
- }
-
- @Override
- public Class> getObjectType() {
- return DynamoDBMapperConfig.class;
- }
+public class DynamoDBMapperConfigPostProcessor implements BeanPostProcessor {
+ private static final Logger LOGGER = LoggerFactory.getLogger(DynamoDBMapperConfigPostProcessor.class);
- @Nullable
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
if (bean instanceof DynamoDBMapperConfig) {
DynamoDBMapperConfig dynamoDBMapperConfig = (DynamoDBMapperConfig) bean;
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java
similarity index 85%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java
index 20486acc..537e4dbb 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperFactory.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -24,14 +24,16 @@
public class DynamoDBMapperFactory implements FactoryBean {
- private final AmazonDynamoDB amazonDynamoDB;
- private final DynamoDBMapperConfig dynamoDBMapperConfig;
-
@Autowired
+ private AmazonDynamoDB amazonDynamoDB;
+ @Autowired
+ private DynamoDBMapperConfig dynamoDBMapperConfig;
+
+/* @Autowired
public DynamoDBMapperFactory(AmazonDynamoDB amazonDynamoDB, DynamoDBMapperConfig dynamoDBMapperConfig) {
this.amazonDynamoDB = amazonDynamoDB;
this.dynamoDBMapperConfig = dynamoDBMapperConfig;
- }
+ }*/
@Override
public DynamoDBMapper getObject() throws Exception {
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java
index 37c15daa..8439052b 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoriesRegistrar.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java
similarity index 75%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java
index 3cce9e03..d53d37f1 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryConfigExtension.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,7 +17,9 @@
import java.util.HashMap;
import java.util.Map;
+import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
+
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.socialsignin.spring.data.dynamodb.core.DynamoDBTemplate;
@@ -25,9 +27,14 @@
import org.socialsignin.spring.data.dynamodb.repository.support.DynamoDBRepositoryFactoryBean;
import org.socialsignin.spring.data.dynamodb.repository.util.DynamoDBMappingContextProcessor;
import org.socialsignin.spring.data.dynamodb.repository.util.Entity2DynamoDBTableSynchronizer;
+import org.springframework.beans.factory.NoSuchBeanDefinitionException;
+import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition;
+import org.springframework.beans.factory.config.BeanDefinition;
+import org.springframework.beans.factory.support.AbstractBeanDefinition;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.core.annotation.AnnotationAttributes;
+import org.springframework.core.type.MethodMetadata;
import org.springframework.data.config.ParsingUtils;
import org.springframework.data.repository.config.AnnotationRepositoryConfigurationSource;
import org.springframework.data.repository.config.RepositoryConfigurationExtensionSupport;
@@ -37,6 +44,10 @@
import org.springframework.util.StringUtils;
import org.w3c.dom.Element;
+import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapper;
+import com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMapperConfig;
+
/**
* @author Michael Lavelle
* @author Sebastian Just
@@ -122,15 +133,14 @@ private void postProcess(BeanDefinitionBuilder builder, String repositoryName, S
if (StringUtils.hasText(amazonDynamoDBRef)) {
dynamoDBRef = amazonDynamoDBRef;
} else {
- dynamoDBRef = DEFAULT_AMAZON_DYNAMO_DB_BEAN_NAME;
+ dynamoDBRef = findBeanName(AmazonDynamoDB.class).orElseThrow(() ->
+ new NoSuchBeanDefinitionException(AmazonDynamoDB.class, "A bean of type AmazonDynamoDB must be provided!"));
}
dynamoDBOperationsRef = dynamoDBTemplateCache
.computeIfAbsent(getBeanNameWithModulePrefix("DynamoDBTemplate-" + dynamoDBRef), ref -> {
BeanDefinitionBuilder dynamoDBTemplateBuilder = BeanDefinitionBuilder
.genericBeanDefinition(DynamoDBTemplate.class);
- // AmazonDynamoDB amazonDynamoDB, DynamoDBMapper dynamoDBMapper,
- // DynamoDBMapperConfig dynamoDBMapperConfig
dynamoDBTemplateBuilder.addConstructorArgReference(dynamoDBRef);
dynamoDBTemplateBuilder.addConstructorArgReference(this.dynamoDBMapperName);
@@ -222,12 +232,39 @@ private String registerDynamoDBMappingContext(BeanDefinitionRegistry registry) {
LOGGER.debug("Adding bean <{}> of type <{}>", dynamoDBMappingContextRef,
dynamoDBMappingContextBuilder.getBeanDefinition());
-
- registry.registerBeanDefinition(dynamoDBMappingContextRef, dynamoDBMappingContextBuilder.getBeanDefinition());
+ registry.registerBeanDefinition(dynamoDBMappingContextRef, augmentContext(dynamoDBMappingContextBuilder));
return dynamoDBMappingContextRef;
}
-
+
+ private AbstractBeanDefinition augmentContext(BeanDefinitionBuilder beanDefinitionBuilder) {
+ AbstractBeanDefinition beanDefinition = beanDefinitionBuilder.getBeanDefinition();
+ beanDefinition.setResourceDescription(getClass().getName());
+ return beanDefinition;
+ }
+
+ private Optional findBeanName(Class> requiredType) {
+ final String requiredClassName = requiredType.getName();
+ for(String bn : registry.getBeanDefinitionNames()) {
+
+ BeanDefinition bd = registry.getBeanDefinition(bn);
+ String beanClass = bd.getBeanClassName();
+
+ if (requiredClassName.equals(beanClass)) {
+ return Optional.of(bn);
+ } else if (beanClass == null && ((bd instanceof AnnotatedBeanDefinition))) {
+ MethodMetadata meta = ((AnnotatedBeanDefinition)bd).getFactoryMethodMetadata();
+ beanClass = meta.getReturnTypeName();
+
+ if (requiredClassName.contentEquals(beanClass)) {
+ return Optional.of(bn);
+ }
+ }
+ }
+
+ return Optional.empty();
+ }
+
@Override
public void registerBeansForRoot(BeanDefinitionRegistry registry,
RepositoryConfigurationSource configurationSource) {
@@ -235,18 +272,33 @@ public void registerBeansForRoot(BeanDefinitionRegistry registry,
// Store for later to be used by #postProcess, too
this.registry = registry;
-
- this.dynamoDBMapperConfigName = getBeanNameWithModulePrefix("DynamoDBMapperConfig");
- // TODO only if it doesn't exist
- BeanDefinitionBuilder dynamoDBMapperConfigBuiilder = BeanDefinitionBuilder
- .genericBeanDefinition(DynamoDBMapperConfigFactory.class);
- registry.registerBeanDefinition(this.dynamoDBMapperConfigName,
- dynamoDBMapperConfigBuiilder.getBeanDefinition());
-
- this.dynamoDBMapperName = getBeanNameWithModulePrefix("DynamoDBMapper");
- BeanDefinitionBuilder dynamoDBMapperBuilder = BeanDefinitionBuilder
- .genericBeanDefinition(DynamoDBMapperFactory.class);
- registry.registerBeanDefinition(this.dynamoDBMapperName, dynamoDBMapperBuilder.getBeanDefinition());
+
+ BeanDefinitionBuilder dynamoDBMapperConfigPostProcessorBuilder = BeanDefinitionBuilder
+ .genericBeanDefinition(DynamoDBMapperConfigPostProcessor.class);
+ registry.registerBeanDefinition(getBeanNameWithModulePrefix("DynamoDBMapperConfigPostProcessor"), augmentContext(dynamoDBMapperConfigPostProcessorBuilder));
+
+
+ // Add missing beans if required
+ // TODO this should all go away with the separation into
+ // Core, Boot and CDI with the next Spring update
+ this.dynamoDBMapperConfigName = findBeanName(DynamoDBMapperConfig.class).orElseGet(() -> {
+ String dynamoDBMapperConfigName = getBeanNameWithModulePrefix("DynamoDBMapperConfig");
+ BeanDefinitionBuilder dynamoDBMapperConfigBuilder = BeanDefinitionBuilder
+ .genericBeanDefinition(DynamoDBMapperConfigFactory.class);
+ registry.registerBeanDefinition(dynamoDBMapperConfigName, augmentContext(dynamoDBMapperConfigBuilder));
+
+ return dynamoDBMapperConfigName;
+ });
+
+
+ this.dynamoDBMapperName = findBeanName(DynamoDBMapper.class).orElseGet(() -> {
+ String dynamoDBMapperName = getBeanNameWithModulePrefix("DynamoDBMapper");
+ BeanDefinitionBuilder dynamoDBMapperBuilder = BeanDefinitionBuilder
+ .genericBeanDefinition(DynamoDBMapperFactory.class);
+
+ registry.registerBeanDefinition(dynamoDBMapperName, augmentContext(dynamoDBMapperBuilder));
+ return dynamoDBMapperName;
+ });
}
protected String getBeanNameWithModulePrefix(String baseBeanName) {
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java
index 9900cc76..4e3e4b69 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBRepositoryNameSpaceHandler.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java
index a5e68afc..118dcffc 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/config/EnableDynamoDBRepositories.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java
index 67739bfb..91d64e4a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java
index 610bf683..47da1b8a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCreator.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java
similarity index 99%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java
index a14ec0bc..3f328a87 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteria.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java
index bcb99057..5339a263 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBCountQueryCreator.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java
similarity index 99%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java
index 0b1e3ff4..9f8b6e81 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteria.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java
index e2747652..bf737cf2 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteria.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java
index 423cfd0f..21d08ba6 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCreator.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java
index b10ae548..d667f3a0 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryCriteria.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java
index 53406444..bcfe12bf 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategy.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java
index c2e9afe0..da3e18a1 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryMethod.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java
index bafb592f..7a05be3a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQuery.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java
index 785ae899..90379579 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/CompositeIdHashAndRangeKeyExtractor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java
index c5f664b3..3bf0bebb 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityInformation.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java
similarity index 99%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java
index feffe022..bd995657 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupport.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java
index 7e678c7b..12cca30f 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadata.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java
index 4a3a4387..ab704944 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyExtractingEntityMetadataImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java
index 4e66a88e..a0a935d4 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java
index 2d271377..dca0468a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java
index fcb15db7..ef38ff55 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashKeyExtractingEntityMetadata.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java
similarity index 88%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java
index 2ce77299..2fd69b89 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformation.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java
index 7a6ed7e7..a3559b92 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java
index 5c6d3c84..3e211ae1 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImpl.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java
index 81b6e0c2..35b9cc36 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactory.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java
index 66f46624..308e1f8e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBean.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java
index d8c8a56e..9bcc89eb 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissions.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java
similarity index 89%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java
index de26ddea..7da26279 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanPermissions.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java
similarity index 96%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java
index b3f5a4c3..f4d2412b 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/FieldAndGetterReflectionEntityInformation.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java
similarity index 87%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java
index de063c4a..b621b477 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashAndRangeKeyExtractor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java
similarity index 86%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java
index aa451455..afb5d7c5 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyExtractor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java
similarity index 91%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java
index bb406dec..ffc93795 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/HashKeyIsIdHashKeyExtractor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java
index 05dfa0cd..df777a99 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java
similarity index 97%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java
index 3950242e..06a7312e 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java
similarity index 92%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java
index 8800cc03..9e6091b6 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/DynamoDBMappingContextProcessor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java
similarity index 95%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java
index 9795aa3c..d709140a 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDL.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java
similarity index 98%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java
index 51595528..cc8e0df6 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizer.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java
index 19f75dba..c3df9451 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/repository/util/EntityInformationProxyPostProcessor.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java
similarity index 94%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java
index d3049ae0..082ef268 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandler.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java
similarity index 93%
rename from src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java
rename to spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java
index 1280101e..4a939a72 100644
--- a/src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java
+++ b/spring-data-dynamodb/src/main/java/org/socialsignin/spring/data/dynamodb/utils/SortHandler.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension b/spring-data-dynamodb/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension
similarity index 100%
rename from src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension
rename to spring-data-dynamodb/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension
diff --git a/src/main/resources/META-INF/spring.handlers b/spring-data-dynamodb/src/main/resources/META-INF/spring.handlers
similarity index 100%
rename from src/main/resources/META-INF/spring.handlers
rename to spring-data-dynamodb/src/main/resources/META-INF/spring.handlers
diff --git a/src/main/resources/META-INF/spring.schemas b/spring-data-dynamodb/src/main/resources/META-INF/spring.schemas
similarity index 100%
rename from src/main/resources/META-INF/spring.schemas
rename to spring-data-dynamodb/src/main/resources/META-INF/spring.schemas
diff --git a/src/main/resources/META-INF/spring.tooling b/spring-data-dynamodb/src/main/resources/META-INF/spring.tooling
similarity index 100%
rename from src/main/resources/META-INF/spring.tooling
rename to spring-data-dynamodb/src/main/resources/META-INF/spring.tooling
diff --git a/src/main/resources/org/socialsignin/spring/data/dynamodb/repository/config/spring-dynamodb-1.0.xsd b/spring-data-dynamodb/src/main/resources/org/socialsignin/spring/data/dynamodb/repository/config/spring-dynamodb-1.0.xsd
similarity index 100%
rename from src/main/resources/org/socialsignin/spring/data/dynamodb/repository/config/spring-dynamodb-1.0.xsd
rename to spring-data-dynamodb/src/main/resources/org/socialsignin/spring/data/dynamodb/repository/config/spring-dynamodb-1.0.xsd
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java
index 3fc12a15..63ec424c 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingIntegrationTests.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java
index b1ead7fb..09b60a4f 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/AuditingViaJavaConfigRepositoriesIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java
index fa66782b..975db555 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingBeanDefinitionParserTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java
similarity index 92%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java
index 850ada3e..d38e81ba 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/config/DynamoDBAuditingRegistrarUnitTests.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java
similarity index 89%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java
index 0f777f3f..84264691 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/ConfigurationTI.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryIT.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryIT.java
index 1147682a..40026f4b 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/CustomerHistoryIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -33,9 +33,9 @@
@RunWith(SpringJUnit4ClassRunner.class)
@DirtiesContext(methodMode = MethodMode.BEFORE_METHOD)
-@ContextConfiguration(classes = {CustomerHistoryTest.TestAppConfig.class, DynamoDBLocalResource.class})
+@ContextConfiguration(classes = {CustomerHistoryIT.TestAppConfig.class, DynamoDBLocalResource.class})
@TestPropertySource(properties = {"spring.data.dynamodb.entity2ddl.auto=create"})
-public class CustomerHistoryTest {
+public class CustomerHistoryIT {
@Configuration
@EnableDynamoDBRepositories(basePackages = "org.socialsignin.spring.data.dynamodb.domain.sample")
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java
index ab41186a..012304d4 100755
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java
index e25ed1e7..995a9f37 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/DynamoDBTemplateTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java
index bec3d373..bec4ed1e 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/FeedUserIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java
index 4f1ef6a8..7bbfd02d 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/core/SortPageableIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java
index 8cfc9b32..4ced63dc 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/UnpagedPageImplTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java
index d98711f0..664ccb84 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUser.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java
similarity index 87%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java
index 7c6f9cc2..d64611cd 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/AuditableUserRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java
index ffe4f9a4..9f41c61e 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CRUDOperationsIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java
index e8995ca9..e6be5ad3 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocument.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentIT.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentIT.java
index 78fffe0e..f7a8a7ef 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,9 +28,9 @@
@RunWith(SpringJUnit4ClassRunner.class)
@DirtiesContext
-@ContextConfiguration(classes = {DynamoDBLocalResource.class, CustomerDocumentTest.TestAppConfig.class})
+@ContextConfiguration(classes = {DynamoDBLocalResource.class, CustomerDocumentIT.TestAppConfig.class})
@TestPropertySource(properties = {"spring.data.dynamodb.entity2ddl.auto=create"})
-public class CustomerDocumentTest {
+public class CustomerDocumentIT {
@Configuration
@EnableDynamoDBRepositories(basePackages = "org.socialsignin.spring.data.dynamodb.domain.sample")
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java
index 737a5cc0..617f3564 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentId.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java
index bb2a8296..969bc46a 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerDocumentRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java
index c3ed3b80..afd9a7dc 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistory.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java
similarity index 91%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java
index cf1e81f8..f63461c6 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryId.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java
similarity index 87%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java
index 4105481a..b521c287 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/CustomerHistoryRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java
similarity index 89%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java
index 54509bc3..4124d115 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/DynamoDBYearMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java
index 53074f75..21313d60 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Feed.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java
index 6cd0e75d..102b6e3a 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedPagingRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java
index 1cea3e95..694046a4 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUser.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java
similarity index 89%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java
index 75bb5c16..1d7a2b69 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/FeedUserRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java
index 27a48d66..f2e9eff4 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/GlobalSecondaryIndexWithRangeKeyIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java
index f94c9dd1..504ca58c 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/HashRangeKeyIT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java
index 453f5d80..6fcce788 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Installation.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java
similarity index 88%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java
index 3c9bc9ca..10efd7bd 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/InstallationRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java
index c4c45af1..11cb675b 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Jdk8IT.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java
index 92cc5423..5f51925f 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/Playlist.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java
similarity index 92%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java
index a6555acd..c403900f 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistId.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java
similarity index 87%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java
index 9864df72..846c98f7 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/PlaylistRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java
index e23daacf..7600097e 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/User.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java
similarity index 91%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java
index 97ec0b28..071944d3 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserPaginationRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java
index 69aaf4c6..bcf65d6e 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/domain/sample/UserRepository.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java
index 050b8c4d..bb8e16eb 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DefaultDynamoDBDateMarshallerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java
index 967829f5..aea60694 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBMappingContextTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java
index 2ccb67eb..f3179170 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentEntityTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java
index 41bd2081..49e05bff 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/DynamoDBPersistentPropertyImplUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java
index 3bcc879f..754b1fa0 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/AbstractDynamoDBEventListenerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java
index 8200a5b0..77e12246 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/LoggingEventListenerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java
index 640175df..16782c9a 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/mapping/event/ValidatingDynamoDBEventListenerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java
index 593177a4..d42b9065 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2EpocheDynamoDBMarshallerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java
index 3d3c0df2..07960e39 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Date2IsoDynamoDBMarshallerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java
index abeb1c0f..140e1b7f 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2EpocheDynamoDBMarshallerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java
index 2872697f..06ed9e8c 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/marshaller/Instant2IsoDynamoDBMarshallerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java
index 841349b4..6013df34 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractDynamicQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java
similarity index 95%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java
index b1c9ae7c..651bbdea 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractMultipleEntityQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java
similarity index 92%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java
index 4856923a..46cfadd6 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/AbstractSingleEntityQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java
index 751a6df0..cfa66669 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashAndRangeKeyQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java
index 264d27b3..2b73df72 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/CountByHashKeyQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java
index 0c7e3def..380bcae9 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryExpressionCountQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java
index 40599e06..47d3120c 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/QueryRequestCountQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java
index 0871692a..6a11840a 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/query/ScanExpressionCountQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java
index 8c828a05..e481e51b 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/DynamoDBHashAndRangeKeyTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java
index dc099912..d44d1990 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/cdi/DynamoDBRepositoryBeanTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactoryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessorTest.java
similarity index 92%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactoryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessorTest.java
index e168dad2..9ec905fe 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigFactoryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/config/DynamoDBMapperConfigPostProcessorTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,7 +29,7 @@
import static org.junit.Assert.assertSame;
@RunWith(MockitoJUnitRunner.class)
-public class DynamoDBMapperConfigFactoryTest {
+public class DynamoDBMapperConfigPostProcessorTest {
@Mock
private DynamoDBMapper dynamoDBMapper;
@@ -38,11 +38,11 @@ public class DynamoDBMapperConfigFactoryTest {
@Mock
private AmazonDynamoDB dynamoDB;
- DynamoDBMapperConfigFactory underTest;
+ DynamoDBMapperConfigPostProcessor underTest;
@Before
public void setUp() throws Exception {
- underTest = new DynamoDBMapperConfigFactory();
+ underTest = new DynamoDBMapperConfigPostProcessor();
}
@Test
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java
index 0e8075ce..0cee13ae 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryCriteriaUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java
index 63f95da7..b05617b0 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/AbstractDynamoDBQueryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java
index 54beca10..ad8d05fa 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/CaseChangingMarshaller.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java
similarity index 99%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java
index 49a601d9..3d362c10 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashAndRangeKeyCriteriaUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java
index 8005f105..3301520b 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBEntityWithHashKeyOnlyCriteriaUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java
index 1e13bbd8..68ecb976 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/DynamoDBQueryLookupStrategyTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java
similarity index 99%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java
index 4afad944..89074ae5 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/query/PartTreeDynamoDBQueryUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java
similarity index 93%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java
index 367628f1..9c387c36 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBEntityMetadataSupportUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java
index beb590e7..831c105d 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBHashAndRangeKeyMethodExtractorImplUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java
index 803f31d0..9b1bf593 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashAndRangeKeyEntityInformationImplUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java
index 1ac491f6..6277ace6 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBIdIsHashKeyEntityInformationImplUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java
index 2aa00671..878bba4d 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryBeanTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java
similarity index 92%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java
index 184e1ad3..e9376ec4 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/DynamoDBRepositoryFactoryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java
similarity index 96%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java
index acb045b9..463da1d3 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/EnableScanAnnotationPermissionTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java
similarity index 98%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java
index 6ea18ad1..3b502637 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBCrudRepositoryTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java
index 3cb7415d..ada853cd 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/support/SimpleDynamoDBPagingAndSortingRepositoryUnitTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java
similarity index 91%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java
index a53d8667..45655a2e 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DDLTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java
similarity index 97%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java
index 953fdb0b..11a55baa 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/repository/util/Entity2DynamoDBTableSynchronizerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java
similarity index 90%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java
index 11d4d0c3..93f698ec 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBLocalResource.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java
index 67f64e03..ca3a8b65 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/DynamoDBResource.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java
index 287ba8b4..4a373b73 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/ExceptionHandlerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java
similarity index 94%
rename from src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java
rename to spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java
index d4cc95d0..955f1d28 100644
--- a/src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java
+++ b/spring-data-dynamodb/src/test/java/org/socialsignin/spring/data/dynamodb/utils/SortHandlerTest.java
@@ -1,5 +1,5 @@
/**
- * Copyright © 2018 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb)
+ * Copyright © 2013-2019 spring-data-dynamodb (https://github.com/derjust/spring-data-dynamodb/spring-data-dynamodb)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/src/test/resources/META-INF/context/HashRangeKeyIT-context.xml b/spring-data-dynamodb/src/test/resources/META-INF/context/HashRangeKeyIT-context.xml
similarity index 100%
rename from src/test/resources/META-INF/context/HashRangeKeyIT-context.xml
rename to spring-data-dynamodb/src/test/resources/META-INF/context/HashRangeKeyIT-context.xml
diff --git a/src/test/resources/logback.xml b/spring-data-dynamodb/src/test/resources/logback.xml
similarity index 53%
rename from src/test/resources/logback.xml
rename to spring-data-dynamodb/src/test/resources/logback.xml
index 30509a4f..a80248ea 100644
--- a/src/test/resources/logback.xml
+++ b/spring-data-dynamodb/src/test/resources/logback.xml
@@ -2,12 +2,20 @@
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %colorize(%msg)%n
+
+
+
diff --git a/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/spring-data-dynamodb/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
similarity index 100%
rename from src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
rename to spring-data-dynamodb/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
diff --git a/src/test/resources/org/socialsignin/spring/data/dynamodb/config/auditing.xml b/spring-data-dynamodb/src/test/resources/org/socialsignin/spring/data/dynamodb/config/auditing.xml
similarity index 100%
rename from src/test/resources/org/socialsignin/spring/data/dynamodb/config/auditing.xml
rename to spring-data-dynamodb/src/test/resources/org/socialsignin/spring/data/dynamodb/config/auditing.xml
diff --git a/src/test/resources/slf4jtest.properties b/spring-data-dynamodb/src/test/resources/slf4jtest.properties
similarity index 100%
rename from src/test/resources/slf4jtest.properties
rename to spring-data-dynamodb/src/test/resources/slf4jtest.properties
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 38b70890..e437d581 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1,6 +1,6 @@