Skip to content

Commit 4af8314

Browse files
eldimiscottgerring
authored andcommitted
Clean-up pom dependencies and remove awssdk#StringUtils usage
1 parent c02b6db commit 4af8314

File tree

5 files changed

+17
-29
lines changed

5 files changed

+17
-29
lines changed

powertools-idempotency/pom.xml

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,6 @@
4848
<groupId>software.amazon.lambda</groupId>
4949
<artifactId>powertools-common</artifactId>
5050
</dependency>
51-
<dependency>
52-
<groupId>software.amazon.lambda</groupId>
53-
<artifactId>powertools-serialization</artifactId>
54-
</dependency>
55-
<dependency>
56-
<groupId>com.amazonaws</groupId>
57-
<artifactId>aws-lambda-java-core</artifactId>
58-
</dependency>
59-
<dependency>
60-
<groupId>software.amazon.awssdk</groupId>
61-
<artifactId>url-connection-client</artifactId>
62-
<version>${aws.sdk.version}</version>
63-
</dependency>
64-
6551
<!-- Test dependencies -->
6652
<dependency>
6753
<groupId>org.junit.jupiter</groupId>

powertools-idempotency/powertools-idempotency-core/pom.xml

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<artifactId>powertools-idempotency-core</artifactId>
2828
<packaging>jar</packaging>
2929

30-
<name>Powertools for AWS Lambda (Java) library Idempotency - Common</name>
30+
<name>Powertools for AWS Lambda (Java) library Idempotency - Core</name>
3131
<description>
3232
Idempotency module common implementation
3333
</description>
@@ -37,15 +37,6 @@
3737
<groupId>software.amazon.lambda</groupId>
3838
<artifactId>powertools-serialization</artifactId>
3939
</dependency>
40-
<dependency>
41-
<groupId>com.amazonaws</groupId>
42-
<artifactId>aws-lambda-java-core</artifactId>
43-
</dependency>
44-
<dependency>
45-
<groupId>software.amazon.awssdk</groupId>
46-
<artifactId>url-connection-client</artifactId>
47-
<version>${aws.sdk.version}</version>
48-
</dependency>
4940
<!-- Test dependencies -->
5041
</dependencies>
5142
</project>

powertools-idempotency/powertools-idempotency-core/src/main/java/software/amazon/lambda/powertools/idempotency/persistence/BasePersistenceStore.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import io.burt.jmespath.Expression;
2121
import org.slf4j.Logger;
2222
import org.slf4j.LoggerFactory;
23-
import software.amazon.awssdk.utils.StringUtils;
2423
import software.amazon.lambda.powertools.idempotency.IdempotencyConfig;
2524
import software.amazon.lambda.powertools.idempotency.exceptions.IdempotencyItemAlreadyExistsException;
2625
import software.amazon.lambda.powertools.idempotency.exceptions.IdempotencyItemNotFoundException;
@@ -74,7 +73,7 @@ public abstract class BasePersistenceStore implements PersistenceStore {
7473
public void configure(IdempotencyConfig config, String functionName) {
7574
String funcEnv = System.getenv(LAMBDA_FUNCTION_NAME_ENV);
7675
this.functionName = funcEnv != null ? funcEnv : "testFunction";
77-
if (!StringUtils.isEmpty(functionName)) {
76+
if (functionName != null && !functionName.isEmpty()) {
7877
this.functionName += "." + functionName;
7978
}
8079

@@ -340,7 +339,7 @@ private MessageDigest getHashAlgorithm() {
340339
private void validatePayload(JsonNode data, DataRecord dataRecord) throws IdempotencyValidationException {
341340
if (payloadValidationEnabled) {
342341
String dataHash = getHashedPayload(data);
343-
if (!StringUtils.equals(dataHash, dataRecord.getPayloadHash())) {
342+
if (!isEqual(dataRecord.getPayloadHash(), dataHash)) {
344343
throw new IdempotencyValidationException("Payload does not match stored record for this event key");
345344
}
346345
}
@@ -403,4 +402,12 @@ void configure(IdempotencyConfig config, String functionName, LRUCache<String, D
403402
this.configure(config, functionName);
404403
this.cache = cache;
405404
}
405+
406+
private static boolean isEqual(String dataRecordPayload, String dataHash) {
407+
if (dataHash != null && dataRecordPayload != null) {
408+
return dataHash.length() != dataRecordPayload.length() ? false : dataHash.equals(dataRecordPayload);
409+
} else {
410+
return false;
411+
}
412+
}
406413
}

powertools-idempotency/powertools-idempotency-dynamodb/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,11 @@
3838
<artifactId>powertools-idempotency-core</artifactId>
3939
<version>${project.version}</version>
4040
</dependency>
41+
<dependency>
42+
<groupId>software.amazon.awssdk</groupId>
43+
<artifactId>url-connection-client</artifactId>
44+
<version>${aws.sdk.version}</version>
45+
</dependency>
4146
<dependency>
4247
<groupId>software.amazon.awssdk</groupId>
4348
<artifactId>dynamodb</artifactId>

powertools-idempotency/powertools-idempotency-dynamodb/src/main/java/software/amazon/lambda/powertools/idempotency/persistence/dynamodb/DynamoDBPersistenceStore.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import software.amazon.awssdk.services.dynamodb.model.GetItemResponse;
2929
import software.amazon.awssdk.services.dynamodb.model.PutItemRequest;
3030
import software.amazon.awssdk.services.dynamodb.model.UpdateItemRequest;
31-
import software.amazon.awssdk.utils.StringUtils;
3231
import software.amazon.lambda.powertools.common.internal.UserAgentConfigurator;
3332
import software.amazon.lambda.powertools.idempotency.Constants;
3433
import software.amazon.lambda.powertools.idempotency.exceptions.IdempotencyItemAlreadyExistsException;
@@ -314,7 +313,7 @@ public static class Builder {
314313
* @return an instance of the {@link DynamoDBPersistenceStore}
315314
*/
316315
public DynamoDBPersistenceStore build() {
317-
if (StringUtils.isEmpty(tableName)) {
316+
if (tableName == null || "".equals(tableName)) {
318317
throw new IllegalArgumentException("Table name is not specified");
319318
}
320319
return new DynamoDBPersistenceStore(tableName, keyAttr, staticPkValue, sortKeyAttr, expiryAttr,

0 commit comments

Comments
 (0)