Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
682 changes: 514 additions & 168 deletions .brazil.json

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions aws-sdk-java/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,11 @@ Amazon AutoScaling, etc).</description>
<artifactId>dynamodb-enhanced</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>dynamodb-mapper</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>ec2</artifactId>
Expand Down
4 changes: 4 additions & 0 deletions bom/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -531,6 +531,10 @@
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>dynamodb-enhanced</artifactId>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>dynamodb-mapper</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,4 +72,8 @@
<!-- ResponseHandlerHelper has helper method closeConnection() which handles safe closing of connection -->
<suppress id="NoCrtStreamCancel"
files=".*ResponseHandlerHelper\.java$"/>
<!-- dynamodb-mapper is a direct v1 port. Applying the entire v2 ruleset would require a full refactor.
For the mapper every checkstyle is turned off except for these rules. -->
<suppress checks="^((?!UnnecessaryFinalOnLocalVariable|HideUtilityClassConstructor|MissingSdkAnnotation|Header).)*$"
files=".*[\\/]software[\\/]amazon[\\/]awssdk[\\/]mapper[\\/]dynamodb[\\/].+\.java$"/>
</suppressions>
Original file line number Diff line number Diff line change
Expand Up @@ -547,4 +547,11 @@
<Method name="marshallFieldViaRegistry"/>
<Bug pattern="AT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTION"/>
</Match>

<!-- Faithful v1 port: these patterns are carried over verbatim from the v1 DynamoDBMapper and suppressed
to keep the port byte-faithful rather than refactoring. Revisit with the deferred table-admin/S3Link ports. -->
<Match>
<Package name="~software\.amazon\.awssdk\.mapper\.dynamodb.*"/>
<Bug pattern="CT_CONSTRUCTOR_THROW,SING_SINGLETON_HAS_NONPRIVATE_CONSTRUCTOR,DM_STRING_TOSTRING,WMI_WRONG_MAP_ITERATOR,SIC_INNER_SHOULD_BE_STATIC_ANON,SIC_INNER_SHOULD_BE_STATIC,RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE,IS2_INCONSISTENT_SYNC,REC_CATCH_EXCEPTION,ASYNC_BLOCKING_CALL,DLS_DEAD_LOCAL_STORE,URF_UNREAD_FIELD,AT_STALE_THREAD_WRITE_OF_PRIMITIVE,BC_UNCONFIRMED_CAST_OF_RETURN_VALUE,SE_NO_SERIALVERSIONID"/>
</Match>
</FindBugsFilter>
5 changes: 3 additions & 2 deletions buildspecs/resources/generate-modules-to-skip.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
#
# Usage:
# generate-modules-to-skip.sh --release Modules to skip for Maven Central release publishing.
# Skips all test/ modules except those in test-modules-publish-allowlist.txt.
# Skips all test/ modules except those in test-modules-publish-allowlist.txt,
# plus dynamodb-mapper.
# generate-modules-to-skip.sh --docs Modules to skip for javadoc generation.
# Skips all test/ modules + v2-migration.
set -euo pipefail
Expand All @@ -14,7 +15,7 @@ ALLOWLIST="$SCRIPT_DIR/test-modules-publish-allowlist.txt"
if [[ "$1" == "--docs" ]]; then
echo "$(ls "$REPO_ROOT/test/" | tr '\n' ',' | sed 's/,$//'),v2-migration"
elif [[ "$1" == "--release" ]]; then
ls "$REPO_ROOT/test/" | grep -vxFf "$ALLOWLIST" | tr '\n' ',' | sed 's/,$//'
echo "$(ls "$REPO_ROOT/test/" | grep -vxFf "$ALLOWLIST" | tr '\n' ',' | sed 's/,$//'),dynamodb-mapper"
else
echo "Usage: $0 --release | --docs" >&2
exit 1
Expand Down
1 change: 1 addition & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -628,6 +628,7 @@

<!-- High level libraries -->
<includeModule>dynamodb-enhanced</includeModule>
<includeModule>dynamodb-mapper</includeModule>
<includeModule>s3-transfer-manager</includeModule>
<includeModule>iam-policy-builder</includeModule>
<includeModule>s3-event-notifications</includeModule>
Expand Down
257 changes: 257 additions & 0 deletions services-custom/dynamodb-mapper/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
<?xml version="1.0"?>
<!--
~ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
~
~ Licensed under the Apache License, Version 2.0 (the "License").
~ You may not use this file except in compliance with the License.
~ A copy of the License is located at
~
~ http://aws.amazon.com/apache2.0
~
~ or in the "license" file accompanying this file. This file 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.
-->

<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>software.amazon.awssdk</groupId>
<artifactId>services-custom</artifactId>
<version>2.47.5-SNAPSHOT</version>
</parent>
<artifactId>dynamodb-mapper</artifactId>
<name>AWS Java SDK :: DynamoDB :: Mapper</name>
<description>DynamoDB Mapper v2 - a port of the v1 DynamoDBMapper for the AWS SDK for Java v2</description>
<url>https://aws.amazon.com/sdkforjava</url>

<properties>
<awsjavasdk.version>${project.parent.version}</awsjavasdk.version>
<jre.version>1.8</jre.version>
<sdk-v1.version>1.12.797</sdk-v1.version>
<checkstyle.skip>true</checkstyle.skip>
</properties>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<!-- v1-coupled tests not yet ported to the v2 client/model; tracked for a dedicated
follow-up port PR. The golden-master ShapeRequestTest/ShapeResponseTest suite
proves the ported data-plane paths are behavior-preserving in the meantime.
The three tests that make real AWS calls (extend the AWS credentialed base
chain) now live under src/it/java per the v2 layout convention; the DynamoDB
Local functional tests and their fixtures stay under src/test/java (they run
against an embedded server, like dynamodb-enhanced's functionaltests). Either
way these excludes keep the v1-coupled files out of compilation until the
S3Link and Table-admin ports land; the paths are package-relative and match
under both source roots. -->
<testExcludes>
<!-- S3Link tests + fixtures (blocked on the S3Link port). -->
<testExclude>software/amazon/awssdk/mapper/dynamodb/ConfigureS3LinksTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/DynamoDBS3IntegrationTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/DynamoDBS3IntegrationTestBase.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/S3ClientCacheIntegrationTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/S3LinkIDTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/S3LinkTest.java</testExclude>
<!-- Blocked on Table-admin: calls mapper.generateCreateTableRequest(), which still
returns a v1 CreateTableRequest. Rides with the GenerateCreateTableRequest* PR. -->
<testExclude>software/amazon/awssdk/mapper/dynamodb/JsonIntegrationTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/GenerateDeleteTableRequestTest.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/mapper/GenerateCreateTableRequest2Test.java</testExclude>
<testExclude>software/amazon/awssdk/mapper/dynamodb/mapper/GenerateCreateTableRequestTest.java</testExclude>
</testExcludes>
</configuration>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<Automatic-Module-Name>software.amazon.awssdk.mapper.dynamodb</Automatic-Module-Name>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>test-compile</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeScope>test</includeScope>
<includeTypes>so,dll,dylib</includeTypes>
<outputDirectory>${project.build.directory}/native-libs</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Dsqlite4java.library.path=${project.build.directory}/native-libs</argLine>
<environmentVariables>
<DDB_LOCAL_TELEMETRY>0</DDB_LOCAL_TELEMETRY>
</environmentVariables>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

<dependencies>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>dynamodb</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>sdk-core</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>aws-core</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>http-client-spi</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>auth</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>regions</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>annotations</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>utils</artifactId>
<version>${awsjavasdk.version}</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-dynamodb</artifactId>
<version>${sdk-v1.version}</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
<version>${sdk-v1.version}</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-core</artifactId>
<version>${sdk-v1.version}</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.12.7</version>
</dependency>

<!-- Test dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>DynamoDBLocal</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>sqlite4java</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>sqlite4java-win32-x86</artifactId>
<type>dll</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>sqlite4java-win32-x64</artifactId>
<type>dll</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>libsqlite4java-osx</artifactId>
<type>dylib</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>libsqlite4java-linux-i386</artifactId>
<type>so</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.almworks.sqlite4java</groupId>
<artifactId>libsqlite4java-linux-amd64</artifactId>
<type>so</type>
<scope>test</scope>
</dependency>
</dependencies>
</project>
Loading
Loading