Skip to content

Commit 27ef646

Browse files
authored
chore(fips): update endpoint overwrite method (#435)
1 parent 34b9a58 commit 27ef646

File tree

4 files changed

+30
-7
lines changed

4 files changed

+30
-7
lines changed

benchmark/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
<dependency>
3838
<groupId>com.aws.greengrass</groupId>
3939
<artifactId>nucleus</artifactId>
40-
<version>2.6.0-SNAPSHOT</version>
40+
<version>2.13.0-SNAPSHOT</version>
4141
</dependency>
4242
<dependency>
4343
<groupId>com.aws.greengrass</groupId>

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<dependency>
3535
<groupId>software.amazon.awssdk</groupId>
3636
<artifactId>bom</artifactId>
37-
<version>2.17.81</version>
37+
<version>2.20.138</version>
3838
<type>pom</type>
3939
<scope>import</scope>
4040
</dependency>
@@ -73,13 +73,13 @@
7373
<dependency>
7474
<groupId>com.aws.greengrass</groupId>
7575
<artifactId>nucleus</artifactId>
76-
<version>2.6.0-SNAPSHOT</version>
76+
<version>2.13.0-SNAPSHOT</version>
7777
<scope>provided</scope>
7878
</dependency>
7979
<dependency>
8080
<groupId>com.aws.greengrass</groupId>
8181
<artifactId>nucleus</artifactId>
82-
<version>2.6.0-SNAPSHOT</version>
82+
<version>2.13.0-SNAPSHOT</version>
8383
<type>test-jar</type>
8484
<scope>test</scope>
8585
</dependency>

src/integrationtests/java/com/aws/greengrass/integrationtests/certificateauthority/OfflineAuthenticationTest.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import com.aws.greengrass.clientdevices.auth.iot.NetworkStateFake;
2121
import com.aws.greengrass.dependency.State;
2222
import com.aws.greengrass.lifecyclemanager.Kernel;
23+
import com.aws.greengrass.mqttclient.MqttRequestException;
2324
import com.aws.greengrass.mqttclient.spool.SpoolerStoreException;
2425
import com.aws.greengrass.testcommons.testutilities.GGExtension;
2526

@@ -46,6 +47,7 @@
4647
import java.util.List;
4748
import java.util.Optional;
4849
import java.util.concurrent.CountDownLatch;
50+
import java.util.concurrent.ExecutionException;
4951
import java.util.concurrent.TimeUnit;
5052
import java.util.function.Supplier;
5153

@@ -172,7 +174,8 @@ void GIVEN_clientDevice_WHEN_verifyingItsIdentity_THEN_pemStored(ExtensionContex
172174
@Test
173175
void GIVEN_clientConnectsWhileOnline_WHEN_offline_THEN_clientCanConnect(ExtensionContext context) throws Exception {
174176
ignoreExceptionOfType(context, NoSuchFileException.class);
175-
177+
ignoreExceptionOfType(context, MqttRequestException.class);
178+
ignoreExceptionOfType(context, ExecutionException.class);
176179
// Given
177180
network.goOnline();
178181

@@ -198,7 +201,8 @@ void GIVEN_clientConnectsWhileOnline_WHEN_offline_THEN_clientCanConnect(Extensio
198201
void GIVEN_clientConnectsWhileOnline_WHEN_offlineAndTtlExpired_THEN_clientCanNotConnect(ExtensionContext context)
199202
throws Exception {
200203
ignoreExceptionOfType(context, NoSuchFileException.class);
201-
204+
ignoreExceptionOfType(context, MqttRequestException.class);
205+
ignoreExceptionOfType(context, ExecutionException.class);
202206
// Given
203207
network.goOnline();
204208
Instant now = Instant.now();
@@ -230,6 +234,8 @@ void GIVEN_clientConnectsWhileOnline_WHEN_offlineAndTtlExpired_THEN_clientCanNot
230234
void GIVEN_clientConnectsWhileOnline_WHEN_offlineAndCertificateRevoked_THEN_backOnlineAndClientRejected(
231235
ExtensionContext context) throws Exception {
232236
ignoreExceptionOfType(context, NoSuchFileException.class);
237+
ignoreExceptionOfType(context, MqttRequestException.class);
238+
ignoreExceptionOfType(context, ExecutionException.class);
233239
// Given
234240
network.goOnline();
235241

@@ -260,6 +266,8 @@ void GIVEN_clientConnectsWhileOnline_WHEN_offlineAndCertificateRevoked_THEN_back
260266
void GIVEN_clientConnectsWhileOnline_WHEN_offlineAndCertDetachedFromThing_THEN_backOnlineAndClientRejected(
261267
ExtensionContext context) throws Exception {
262268
ignoreExceptionOfType(context, NoSuchFileException.class);
269+
ignoreExceptionOfType(context, MqttRequestException.class);
270+
ignoreExceptionOfType(context, ExecutionException.class);
263271
// Given
264272
network.goOnline();
265273

@@ -291,6 +299,8 @@ void GIVEN_clientConnectsWhileOnline_WHEN_storedPemIsCorrupted_THEN_clientCanSti
291299
ExtensionContext context) throws Exception {
292300
ignoreExceptionOfType(context, NoSuchFileException.class);
293301
ignoreExceptionOfType(context, InvalidCertificateException.class);
302+
ignoreExceptionOfType(context, MqttRequestException.class);
303+
ignoreExceptionOfType(context, ExecutionException.class);
294304
// Given
295305
network.goOnline();
296306

src/main/java/com/aws/greengrass/clientdevices/auth/iot/GreengrassV2DataClientFactory.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,16 @@
1313
import software.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider;
1414
import software.amazon.awssdk.core.client.config.ClientOverrideConfiguration;
1515
import software.amazon.awssdk.core.retry.RetryPolicy;
16+
import software.amazon.awssdk.endpoints.Endpoint;
1617
import software.amazon.awssdk.http.apache.ApacheHttpClient;
1718
import software.amazon.awssdk.regions.Region;
1819
import software.amazon.awssdk.services.greengrassv2data.GreengrassV2DataClient;
1920
import software.amazon.awssdk.services.greengrassv2data.GreengrassV2DataClientBuilder;
21+
import software.amazon.awssdk.services.greengrassv2data.endpoints.GreengrassV2DataEndpointParams;
22+
import software.amazon.awssdk.services.greengrassv2data.endpoints.GreengrassV2DataEndpointProvider;
2023

2124
import java.net.URI;
25+
import java.util.concurrent.CompletableFuture;
2226
import javax.inject.Inject;
2327

2428
/**
@@ -51,14 +55,23 @@ public GreengrassV2DataClient getClient() throws DeviceConfigurationException {
5155
String ggServiceEndpoint = ClientConfigurationUtils.getGreengrassServiceEndpoint(deviceConfiguration);
5256
ApacheHttpClient.Builder httpClient = ClientConfigurationUtils.getConfiguredClientBuilder(deviceConfiguration);
5357

58+
GreengrassV2DataEndpointProvider endpointProvider = new GreengrassV2DataEndpointProvider() {
59+
@Override
60+
public CompletableFuture<Endpoint> resolveEndpoint(GreengrassV2DataEndpointParams endpointParams) {
61+
return CompletableFuture.supplyAsync(() -> Endpoint.builder()
62+
.url(URI.create(ggServiceEndpoint))
63+
.build());
64+
}
65+
};
66+
5467
GreengrassV2DataClientBuilder clientBuilder =
5568
GreengrassV2DataClient.builder().credentialsProvider(AnonymousCredentialsProvider.create())
69+
.endpointProvider(endpointProvider)
5670
.httpClientBuilder(httpClient.useIdleConnectionReaper(false))
5771
.overrideConfiguration(ClientOverrideConfiguration.builder()
5872
.retryPolicy(RetryPolicy.none()).build());
5973

6074
clientBuilder.region(Region.of(awsRegion));
61-
clientBuilder.endpointOverride(URI.create(ggServiceEndpoint));
6275
return clientBuilder.build();
6376
}
6477

0 commit comments

Comments
 (0)